@verana-labs/vs-agent-sdk 2.0.0-dev.7 → 2.0.0-dev.72
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.
- package/README.md +0 -2
- package/build/adminApi/AdminApiError.d.ts +28 -0
- package/build/adminApi/AdminApiError.js +60 -0
- package/build/adminApi/AdminApiError.js.map +1 -0
- package/build/adminApi/didcommModules.d.ts +2 -0
- package/build/adminApi/didcommModules.js +8 -0
- package/build/adminApi/didcommModules.js.map +1 -0
- package/build/adminApi/index.d.ts +4 -0
- package/build/adminApi/index.js +21 -0
- package/build/adminApi/index.js.map +1 -0
- package/build/adminApi/moduleEndpoint.d.ts +8 -0
- package/build/adminApi/moduleEndpoint.js +28 -0
- package/build/adminApi/moduleEndpoint.js.map +1 -0
- package/build/adminApi/pagination/PageDto.d.ts +7 -0
- package/build/adminApi/pagination/PageDto.js +50 -0
- package/build/adminApi/pagination/PageDto.js.map +1 -0
- package/build/adminApi/pagination/PaginationQueryDto.d.ts +11 -0
- package/build/adminApi/pagination/PaginationQueryDto.js +46 -0
- package/build/adminApi/pagination/PaginationQueryDto.js.map +1 -0
- package/build/adminApi/pagination/cursor.d.ts +28 -0
- package/build/adminApi/pagination/cursor.js +64 -0
- package/build/adminApi/pagination/cursor.js.map +1 -0
- package/build/adminApi/pagination/index.d.ts +4 -0
- package/build/adminApi/pagination/index.js +21 -0
- package/build/adminApi/pagination/index.js.map +1 -0
- package/build/adminApi/pagination/paginate.d.ts +27 -0
- package/build/adminApi/pagination/paginate.js +77 -0
- package/build/adminApi/pagination/paginate.js.map +1 -0
- package/build/agent/VsAgent.d.ts +17 -34
- package/build/agent/VsAgent.js +75 -205
- package/build/agent/VsAgent.js.map +1 -1
- package/build/agent/createVsAgent.d.ts +5 -6
- package/build/agent/createVsAgent.js +3 -5
- package/build/agent/createVsAgent.js.map +1 -1
- package/build/blockchain/AnonCredsTrustService.d.ts +62 -0
- package/build/blockchain/AnonCredsTrustService.js +256 -0
- package/build/blockchain/AnonCredsTrustService.js.map +1 -0
- package/build/blockchain/AuthorizationService.d.ts +5 -3
- package/build/blockchain/AuthorizationService.js +17 -29
- package/build/blockchain/AuthorizationService.js.map +1 -1
- package/build/blockchain/IndexerWebSocketService.d.ts +7 -1
- package/build/blockchain/IndexerWebSocketService.js +68 -36
- package/build/blockchain/IndexerWebSocketService.js.map +1 -1
- package/build/blockchain/VeranaChainService.d.ts +26 -14
- package/build/blockchain/VeranaChainService.js +139 -127
- package/build/blockchain/VeranaChainService.js.map +1 -1
- package/build/blockchain/VeranaIndexerService.d.ts +14 -1
- package/build/blockchain/VeranaIndexerService.js +122 -8
- package/build/blockchain/VeranaIndexerService.js.map +1 -1
- package/build/blockchain/handlers/authorizationHandlers.js +2 -2
- package/build/blockchain/handlers/authorizationHandlers.js.map +1 -1
- package/build/blockchain/handlers/defaultHandlers.js +6 -1
- package/build/blockchain/handlers/defaultHandlers.js.map +1 -1
- package/build/blockchain/handlers/index.d.ts +1 -0
- package/build/blockchain/handlers/index.js +1 -0
- package/build/blockchain/handlers/index.js.map +1 -1
- package/build/blockchain/handlers/selfIssuanceHandlers.d.ts +13 -0
- package/build/blockchain/handlers/selfIssuanceHandlers.js +76 -0
- package/build/blockchain/handlers/selfIssuanceHandlers.js.map +1 -0
- package/build/blockchain/handlers/stateMutations.d.ts +20 -3
- package/build/blockchain/handlers/stateMutations.js +286 -41
- package/build/blockchain/handlers/stateMutations.js.map +1 -1
- package/build/blockchain/index.d.ts +2 -0
- package/build/blockchain/index.js +2 -0
- package/build/blockchain/index.js.map +1 -1
- package/build/blockchain/indexerMappers.d.ts +3 -0
- package/build/blockchain/indexerMappers.js +53 -0
- package/build/blockchain/indexerMappers.js.map +1 -0
- package/build/blockchain/types.d.ts +13 -58
- package/build/blockchain/types.js.map +1 -1
- package/build/bootstrap/EcsBootstrapService.d.ts +14 -3
- package/build/bootstrap/EcsBootstrapService.js +178 -79
- package/build/bootstrap/EcsBootstrapService.js.map +1 -1
- package/build/connections/ParentConnectionModule.d.ts +20 -0
- package/build/connections/ParentConnectionModule.js +56 -0
- package/build/connections/ParentConnectionModule.js.map +1 -0
- package/build/credentials/FullTailsFileService.d.ts +0 -1
- package/build/credentials/FullTailsFileService.js +0 -49
- package/build/credentials/FullTailsFileService.js.map +1 -1
- package/build/did/CachedDocumentLoader.d.ts +3 -0
- package/build/did/CachedDocumentLoader.js +7 -1
- package/build/did/CachedDocumentLoader.js.map +1 -1
- package/build/did/CachedWebDidResolver.d.ts +0 -4
- package/build/did/CachedWebDidResolver.js +1 -5
- package/build/did/CachedWebDidResolver.js.map +1 -1
- package/build/did/artifactServices.d.ts +12 -0
- package/build/did/artifactServices.js +48 -0
- package/build/did/artifactServices.js.map +1 -0
- package/build/did/legacyDidWeb.d.ts +6 -4
- package/build/did/legacyDidWeb.js +17 -14
- package/build/did/legacyDidWeb.js.map +1 -1
- package/build/did/publicDid.d.ts +4 -0
- package/build/did/publicDid.js +19 -0
- package/build/did/publicDid.js.map +1 -0
- package/build/events/BaseMessageEvents.js +139 -5
- package/build/events/BaseMessageEvents.js.map +1 -1
- package/build/events/ConnectionEvents.js +129 -82
- package/build/events/ConnectionEvents.js.map +1 -1
- package/build/events/VsAgentEvents.d.ts +11 -9
- package/build/events/VsAgentEvents.js +8 -1
- package/build/events/VsAgentEvents.js.map +1 -1
- package/build/events/VtFlowEvents.d.ts +1 -1
- package/build/events/VtFlowEvents.js +29 -17
- package/build/events/VtFlowEvents.js.map +1 -1
- package/build/index.d.ts +7 -1
- package/build/index.js +15 -2
- package/build/index.js.map +1 -1
- package/build/plugins/setupBaseDidComm.js +9 -12
- package/build/plugins/setupBaseDidComm.js.map +1 -1
- package/build/transports/VsAgentWsInboundTransport.d.ts +1 -1
- package/build/transports/VsAgentWsInboundTransport.js +20 -14
- package/build/transports/VsAgentWsInboundTransport.js.map +1 -1
- package/build/types.d.ts +7 -13
- package/build/types.js +1 -2
- package/build/types.js.map +1 -1
- package/build/utils/agent.d.ts +29 -4
- package/build/utils/agent.js +91 -22
- package/build/utils/agent.js.map +1 -1
- package/build/utils/didReadiness.d.ts +9 -0
- package/build/utils/didReadiness.js +42 -0
- package/build/utils/didReadiness.js.map +1 -0
- package/build/utils/ecsClaims.d.ts +47 -0
- package/build/utils/ecsClaims.js +120 -0
- package/build/utils/ecsClaims.js.map +1 -0
- package/build/utils/ecsService.d.ts +8 -0
- package/build/utils/ecsService.js +23 -0
- package/build/utils/ecsService.js.map +1 -0
- package/build/utils/index.d.ts +4 -0
- package/build/utils/index.js +4 -0
- package/build/utils/index.js.map +1 -1
- package/build/utils/selfIssuedEcsCredential.d.ts +8 -0
- package/build/utils/selfIssuedEcsCredential.js +158 -0
- package/build/utils/selfIssuedEcsCredential.js.map +1 -0
- package/build/utils/setupSelfTr.d.ts +34 -66
- package/build/utils/setupSelfTr.js +90 -294
- package/build/utils/setupSelfTr.js.map +1 -1
- package/build/utils/trustCredentialStore.d.ts +67 -9
- package/build/utils/trustCredentialStore.js +296 -111
- package/build/utils/trustCredentialStore.js.map +1 -1
- package/build/utils/util.d.ts +10 -0
- package/build/utils/util.js +16 -0
- package/build/utils/util.js.map +1 -1
- package/build/utils/vcdm2.d.ts +34 -0
- package/build/utils/vcdm2.js +60 -0
- package/build/utils/vcdm2.js.map +1 -0
- package/build/utils/vtjscResolver.d.ts +18 -0
- package/build/utils/vtjscResolver.js +54 -0
- package/build/utils/vtjscResolver.js.map +1 -0
- package/build/vtFlow/VtFlowOrchestrator.d.ts +107 -14
- package/build/vtFlow/VtFlowOrchestrator.js +734 -109
- package/build/vtFlow/VtFlowOrchestrator.js.map +1 -1
- package/build/vtFlow/assertVerifiableService.d.ts +1 -0
- package/build/vtFlow/assertVerifiableService.js +45 -5
- package/build/vtFlow/assertVerifiableService.js.map +1 -1
- package/build/vtFlow/ecsIssuanceExemption.d.ts +12 -0
- package/build/vtFlow/ecsIssuanceExemption.js +84 -0
- package/build/vtFlow/ecsIssuanceExemption.js.map +1 -0
- package/build/vtFlow/index.d.ts +1 -0
- package/build/vtFlow/index.js +1 -0
- package/build/vtFlow/index.js.map +1 -1
- package/package.json +17 -12
- package/build/did/migrateWebVhLog.d.ts +0 -34
- package/build/did/migrateWebVhLog.js +0 -230
- package/build/did/migrateWebVhLog.js.map +0 -1
- package/build/did/migrateWebVhVersionTime.d.ts +0 -9
- package/build/did/migrateWebVhVersionTime.js +0 -191
- package/build/did/migrateWebVhVersionTime.js.map +0 -1
|
@@ -57,6 +57,10 @@ export interface IndexerSubscribeMessage {
|
|
|
57
57
|
dids?: string[];
|
|
58
58
|
corporationId?: number;
|
|
59
59
|
}
|
|
60
|
+
export interface IndexerSubscribedMessage {
|
|
61
|
+
type: 'subscribed';
|
|
62
|
+
block: number;
|
|
63
|
+
}
|
|
60
64
|
export interface IndexerEventsResponse {
|
|
61
65
|
events: IndexerEventRecord[];
|
|
62
66
|
count: number;
|
|
@@ -131,6 +135,7 @@ export interface CredentialSchemaDto {
|
|
|
131
135
|
digest_algorithm: string;
|
|
132
136
|
issuer_onboarding_mode?: string;
|
|
133
137
|
verifier_onboarding_mode?: string;
|
|
138
|
+
holder_validation_validity_period?: number;
|
|
134
139
|
archived: string | null;
|
|
135
140
|
created: string;
|
|
136
141
|
modified: string;
|
|
@@ -162,10 +167,16 @@ export interface ParticipantDto {
|
|
|
162
167
|
op_state?: string;
|
|
163
168
|
revoked: string | null;
|
|
164
169
|
slashed: string | null;
|
|
165
|
-
|
|
170
|
+
effective_from?: string | null;
|
|
171
|
+
effective_until?: string | null;
|
|
166
172
|
modified: string;
|
|
167
173
|
validator_participant_id?: number | null;
|
|
168
174
|
op_summary_digest?: string;
|
|
175
|
+
validation_fees?: number;
|
|
176
|
+
issuance_fees?: number;
|
|
177
|
+
verification_fees?: number;
|
|
178
|
+
issuance_fee_discount?: number;
|
|
179
|
+
verification_fee_discount?: number;
|
|
169
180
|
}
|
|
170
181
|
export interface CorporationDto {
|
|
171
182
|
id: number;
|
|
@@ -191,18 +202,6 @@ export interface DigestDto {
|
|
|
191
202
|
digest: string;
|
|
192
203
|
created: string;
|
|
193
204
|
}
|
|
194
|
-
export interface RawParticipant {
|
|
195
|
-
id: number;
|
|
196
|
-
schemaId: number;
|
|
197
|
-
role: number;
|
|
198
|
-
did: string;
|
|
199
|
-
corporationId?: number;
|
|
200
|
-
validatorParticipantId: number;
|
|
201
|
-
opState?: number;
|
|
202
|
-
opSummaryDigest?: string;
|
|
203
|
-
revoked: Date | undefined;
|
|
204
|
-
slashed: Date | undefined;
|
|
205
|
-
}
|
|
206
205
|
export interface Ecosystem {
|
|
207
206
|
id: number;
|
|
208
207
|
did: string;
|
|
@@ -245,57 +244,13 @@ export interface VsOperatorAuthorization {
|
|
|
245
244
|
vsOperator: string;
|
|
246
245
|
records: ParticipantAuthorizationRecord[];
|
|
247
246
|
}
|
|
248
|
-
export interface ParticipantQueryClient {
|
|
249
|
-
GetParticipant(req: {
|
|
250
|
-
id: number;
|
|
251
|
-
}): Promise<{
|
|
252
|
-
participant?: RawParticipant;
|
|
253
|
-
}>;
|
|
254
|
-
FindParticipantsWithDID(req: object): Promise<{
|
|
255
|
-
participants: RawParticipant[];
|
|
256
|
-
}>;
|
|
257
|
-
GetParticipantSession(req: {
|
|
258
|
-
id: string;
|
|
259
|
-
}): Promise<{
|
|
260
|
-
session?: unknown;
|
|
261
|
-
}>;
|
|
262
|
-
}
|
|
263
|
-
export interface EcosystemQueryClient {
|
|
264
|
-
GetEcosystem(req: {
|
|
265
|
-
id: number;
|
|
266
|
-
}): Promise<{
|
|
267
|
-
ecosystem?: Ecosystem;
|
|
268
|
-
}>;
|
|
269
|
-
}
|
|
270
|
-
export interface CredentialSchemaQueryClient {
|
|
271
|
-
GetCredentialSchema(req: {
|
|
272
|
-
id: number;
|
|
273
|
-
}): Promise<{
|
|
274
|
-
schema?: CredentialSchema;
|
|
275
|
-
}>;
|
|
276
|
-
}
|
|
277
|
-
export interface DelegationQueryClient {
|
|
278
|
-
ListOperatorAuthorizations(req: {
|
|
279
|
-
corporationId: number;
|
|
280
|
-
operator: string;
|
|
281
|
-
responseMaxSize: number;
|
|
282
|
-
}): Promise<{
|
|
283
|
-
operatorAuthorizations: OperatorAuthorization[];
|
|
284
|
-
}>;
|
|
285
|
-
ListVSOperatorAuthorizations(req: {
|
|
286
|
-
corporationId: number;
|
|
287
|
-
vsOperator: string;
|
|
288
|
-
responseMaxSize: number;
|
|
289
|
-
}): Promise<{
|
|
290
|
-
vsOperatorAuthorizations: VsOperatorAuthorization[];
|
|
291
|
-
}>;
|
|
292
|
-
}
|
|
293
247
|
export interface VeranaChainConfig {
|
|
294
248
|
rpcUrl: string;
|
|
295
249
|
chainId?: string;
|
|
296
250
|
mnemonic: string;
|
|
297
251
|
logger: BaseLogger;
|
|
298
252
|
gasPrice?: string;
|
|
253
|
+
gasAdjustment?: number;
|
|
299
254
|
corporationAddress?: string;
|
|
300
255
|
autoTriggerResolver?: boolean;
|
|
301
256
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/blockchain/types.ts"],"names":[],"mappings":";;;AAEA,IAAY,eAKX;AALD,WAAY,eAAe;IACzB,mEAAe,CAAA;IACf,2DAAW,CAAA;IACX,+DAAa,CAAA;IACb,iEAAc,CAAA;AAChB,CAAC,EALW,eAAe,+BAAf,eAAe,QAK1B;AAeY,QAAA,oBAAoB,GAAG,QAAQ,CAAA;AAC/B,QAAA,SAAS,GAAG,8BAA8B,CAAA;
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/blockchain/types.ts"],"names":[],"mappings":";;;AAEA,IAAY,eAKX;AALD,WAAY,eAAe;IACzB,mEAAe,CAAA;IACf,2DAAW,CAAA;IACX,+DAAa,CAAA;IACb,iEAAc,CAAA;AAChB,CAAC,EALW,eAAe,+BAAf,eAAe,QAK1B;AAeY,QAAA,oBAAoB,GAAG,QAAQ,CAAA;AAC/B,QAAA,SAAS,GAAG,8BAA8B,CAAA;AAgJvD,IAAY,eAOX;AAPD,WAAY,eAAe;IACzB,oCAAiB,CAAA;IACjB,wCAAqB,CAAA;IACrB,mDAAgC,CAAA;IAChC,uDAAoC,CAAA;IACpC,0CAAuB,CAAA;IACvB,oCAAiB,CAAA;AACnB,CAAC,EAPW,eAAe,+BAAf,eAAe,QAO1B;AAED,IAAY,gBAQX;AARD,WAAY,gBAAgB;IAC1B,qCAAiB,CAAA;IACjB,qCAAiB,CAAA;IACjB,yCAAqB,CAAA;IACrB,uCAAmB,CAAA;IACnB,uCAAmB,CAAA;IACnB,uCAAmB,CAAA;IACnB,qCAAiB,CAAA;AACnB,CAAC,EARW,gBAAgB,gCAAhB,gBAAgB,QAQ3B"}
|
|
@@ -16,17 +16,28 @@ export declare class EcsBootstrapService {
|
|
|
16
16
|
run(): Promise<void>;
|
|
17
17
|
private runStandalone;
|
|
18
18
|
private preflight;
|
|
19
|
+
private operatorSkipReason;
|
|
19
20
|
private acceptPendingOffers;
|
|
21
|
+
/**
|
|
22
|
+
* StartParticipantOP pays a trust deposit, and it cannot be undone. The onboarding request that
|
|
23
|
+
* must follow it travels over DIDComm from the chain event handler, which catches its own
|
|
24
|
+
* failure. The indexer marks that block processed all the same and never replays it, so an
|
|
25
|
+
* unreachable validator leaves the entry at PENDING for ever. This boot step closes that gap.
|
|
26
|
+
*/
|
|
27
|
+
private resumePendingOnboardings;
|
|
28
|
+
private resumeOnboarding;
|
|
29
|
+
private isSelfValidated;
|
|
20
30
|
private discoverEcsSchemas;
|
|
21
31
|
private discoverFromEcosystem;
|
|
22
|
-
private classifySchema;
|
|
23
32
|
private ensureHolderParticipant;
|
|
24
33
|
private findOwnActiveRoot;
|
|
25
34
|
private ensureSelfIssuedParticipant;
|
|
26
35
|
private ensureServiceIssuer;
|
|
27
36
|
private findActiveValidator;
|
|
37
|
+
private triggerResolverBestEffort;
|
|
28
38
|
private isUsableParticipant;
|
|
29
39
|
private runDelegated;
|
|
30
|
-
private
|
|
31
|
-
private
|
|
40
|
+
private findParentServiceIssuer;
|
|
41
|
+
private assertTrustedEcosystem;
|
|
42
|
+
private onboardingClaims;
|
|
32
43
|
}
|
|
@@ -1,22 +1,18 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.EcsBootstrapService = void 0;
|
|
4
|
+
const didcomm_1 = require("@credo-ts/didcomm");
|
|
4
5
|
const credo_ts_didcomm_vt_flow_1 = require("@verana-labs/credo-ts-didcomm-vt-flow");
|
|
5
6
|
const vs_agent_model_1 = require("@verana-labs/vs-agent-model");
|
|
6
7
|
const blockchain_1 = require("../blockchain");
|
|
7
8
|
const types_1 = require("../types");
|
|
9
|
+
const didReadiness_1 = require("../utils/didReadiness");
|
|
10
|
+
const VtFlowOrchestrator_1 = require("../vtFlow/VtFlowOrchestrator");
|
|
11
|
+
const ecsClaims_1 = require("../utils/ecsClaims");
|
|
8
12
|
const START_OP_MSG = '/verana.pp.v1.MsgStartParticipantOP';
|
|
9
13
|
const SELF_CREATE_MSG = '/verana.pp.v1.MsgSelfCreateParticipant';
|
|
10
14
|
const ISSUER_ONBOARDING_MODE_OPEN = 1;
|
|
11
15
|
const ISSUER_ONBOARDING_MODE_GRANTOR = 3;
|
|
12
|
-
const ECS_TITLE_BY_TYPE = {
|
|
13
|
-
ServiceCredential: vs_agent_model_1.ECS.SERVICE,
|
|
14
|
-
OrganizationCredential: vs_agent_model_1.ECS.ORG,
|
|
15
|
-
PersonaCredential: vs_agent_model_1.ECS.PERSONA,
|
|
16
|
-
UserAgentCredential: vs_agent_model_1.ECS.USER_AGENT,
|
|
17
|
-
BadgeCredential: vs_agent_model_1.ECS.BADGE,
|
|
18
|
-
};
|
|
19
|
-
const DELEGATED_OUTCOME_TIMEOUT_MS = 15 * 60000;
|
|
20
16
|
class EcsBootstrapService {
|
|
21
17
|
constructor(agent, indexer, options, logger) {
|
|
22
18
|
this.agent = agent;
|
|
@@ -25,6 +21,10 @@ class EcsBootstrapService {
|
|
|
25
21
|
this.logger = logger;
|
|
26
22
|
}
|
|
27
23
|
async run() {
|
|
24
|
+
// Both repair steps sign nothing on chain, so they run before any gate, in either mode, and
|
|
25
|
+
// also for a deployment whose participants the Corporation operator provisions out of band.
|
|
26
|
+
await this.acceptPendingOffers();
|
|
27
|
+
await this.resumePendingOnboardings();
|
|
28
28
|
if (this.options.mode === 'delegated')
|
|
29
29
|
return this.runDelegated();
|
|
30
30
|
return this.runStandalone();
|
|
@@ -32,12 +32,11 @@ class EcsBootstrapService {
|
|
|
32
32
|
async runStandalone() {
|
|
33
33
|
const skip = await this.preflight();
|
|
34
34
|
if (skip) {
|
|
35
|
-
this.logger.info(`[EcsBootstrap] standalone bootstrap skipped: ${skip}`);
|
|
35
|
+
this.logger.info(`[EcsBootstrap] standalone bootstrap skipped: ${skip}; this agent expects its participants to be provisioned out of band`);
|
|
36
36
|
return;
|
|
37
37
|
}
|
|
38
38
|
const chain = this.agent.veranaChain;
|
|
39
39
|
const indexer = this.indexer;
|
|
40
|
-
await this.acceptPendingOffers();
|
|
41
40
|
const { credential, credentialType, service } = await this.discoverEcsSchemas(indexer);
|
|
42
41
|
await this.ensureHolderParticipant(chain, indexer, credential, credentialType);
|
|
43
42
|
await this.ensureServiceIssuer(chain, indexer, service);
|
|
@@ -53,9 +52,15 @@ class EcsBootstrapService {
|
|
|
53
52
|
return 'the Verana indexer is not configured';
|
|
54
53
|
if (!((_a = this.options.trustedEcosystemDids) === null || _a === void 0 ? void 0 : _a.length))
|
|
55
54
|
return 'TRUSTED_ECS_ECOSYSTEM_DIDS is not set';
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
55
|
+
return this.operatorSkipReason(chain);
|
|
56
|
+
}
|
|
57
|
+
// StartParticipantOP costs a trust deposit and a fee, so both the authorization and the funds
|
|
58
|
+
// must be there. Neither is a misconfiguration: the operator may provision the entry itself.
|
|
59
|
+
async operatorSkipReason(chain) {
|
|
60
|
+
var _a, _b;
|
|
61
|
+
const operatorAuths = (_b = (await ((_a = this.indexer) === null || _a === void 0 ? void 0 : _a.listOperatorAuthorizations(chain.address)))) !== null && _b !== void 0 ? _b : [];
|
|
62
|
+
if (!operatorAuths.some(auth => auth.msgTypes.includes(START_OP_MSG))) {
|
|
63
|
+
return `operator ${chain.address} holds no OperatorAuthorization covering MsgStartParticipantOP`;
|
|
59
64
|
}
|
|
60
65
|
const balance = await chain.getBalance();
|
|
61
66
|
if (Number(balance.amount) === 0) {
|
|
@@ -72,12 +77,33 @@ class EcsBootstrapService {
|
|
|
72
77
|
role: credo_ts_didcomm_vt_flow_1.VtFlowRole.Applicant,
|
|
73
78
|
});
|
|
74
79
|
for (const record of pending) {
|
|
80
|
+
const connection = await this.agent.didcomm.connections.findById(record.connectionId);
|
|
81
|
+
if (!(connection === null || connection === void 0 ? void 0 : connection.isReady) && record.applicantParticipantId) {
|
|
82
|
+
try {
|
|
83
|
+
await new VtFlowOrchestrator_1.VtFlowOrchestrator(this.agent).startOnboardingProcess({
|
|
84
|
+
applicantParticipantId: Number(record.applicantParticipantId),
|
|
85
|
+
});
|
|
86
|
+
this.logger.info(`[EcsBootstrap] reconnected flow ${record.id} so the validator can offer again`);
|
|
87
|
+
}
|
|
88
|
+
catch (error) {
|
|
89
|
+
this.logger.warn(`[EcsBootstrap] could not reconnect flow ${record.id}: ${error.message}`);
|
|
90
|
+
}
|
|
91
|
+
continue;
|
|
92
|
+
}
|
|
75
93
|
if (!record.credentialExchangeRecordId)
|
|
76
94
|
continue;
|
|
77
95
|
try {
|
|
78
|
-
await this.agent.didcomm.credentials.
|
|
79
|
-
|
|
80
|
-
|
|
96
|
+
const exchange = await this.agent.didcomm.credentials.getById(record.credentialExchangeRecordId);
|
|
97
|
+
if (exchange.state === didcomm_1.DidCommCredentialState.CredentialReceived) {
|
|
98
|
+
const { verifyCredential } = this.agent.dependencyManager.resolve(credo_ts_didcomm_vt_flow_1.VtFlowModuleConfig);
|
|
99
|
+
const agentContext = this.agent.context;
|
|
100
|
+
if (await (verifyCredential === null || verifyCredential === void 0 ? void 0 : verifyCredential({ agentContext, record, credentialExchangeRecord: exchange }))) {
|
|
101
|
+
await this.agent.didcomm.credentials.acceptCredential({ credentialExchangeRecordId: exchange.id });
|
|
102
|
+
this.logger.info(`[EcsBootstrap] accepted the verified credential of flow ${record.id}`);
|
|
103
|
+
}
|
|
104
|
+
continue;
|
|
105
|
+
}
|
|
106
|
+
await api.acceptCredentialOffer(record.id);
|
|
81
107
|
this.logger.info(`[EcsBootstrap] re-accepted the pending credential offer for flow ${record.id}`);
|
|
82
108
|
}
|
|
83
109
|
catch (error) {
|
|
@@ -85,6 +111,64 @@ class EcsBootstrapService {
|
|
|
85
111
|
}
|
|
86
112
|
}
|
|
87
113
|
}
|
|
114
|
+
/**
|
|
115
|
+
* StartParticipantOP pays a trust deposit, and it cannot be undone. The onboarding request that
|
|
116
|
+
* must follow it travels over DIDComm from the chain event handler, which catches its own
|
|
117
|
+
* failure. The indexer marks that block processed all the same and never replays it, so an
|
|
118
|
+
* unreachable validator leaves the entry at PENDING for ever. This boot step closes that gap.
|
|
119
|
+
*/
|
|
120
|
+
async resumePendingOnboardings() {
|
|
121
|
+
if (!this.indexer || !this.agent.did)
|
|
122
|
+
return;
|
|
123
|
+
const own = await this.indexer.listParticipants({ did: this.agent.did }).catch(() => []);
|
|
124
|
+
for (const participant of own) {
|
|
125
|
+
if (participant.op_state !== 'PENDING' || participant.revoked || participant.slashed)
|
|
126
|
+
continue;
|
|
127
|
+
try {
|
|
128
|
+
await this.resumeOnboarding(participant);
|
|
129
|
+
}
|
|
130
|
+
catch (error) {
|
|
131
|
+
this.logger.warn(`[EcsBootstrap] could not resume the onboarding of participant ${participant.id}: ${error.message}`);
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
async resumeOnboarding(participant) {
|
|
136
|
+
// A flow that a peer ended on purpose is not an interruption; only an error deserves a retry.
|
|
137
|
+
const api = this.agent.dependencyManager.resolve(credo_ts_didcomm_vt_flow_1.VtFlowApi);
|
|
138
|
+
const [latest] = (await api.findAllByQuery({
|
|
139
|
+
applicantParticipantId: String(participant.id),
|
|
140
|
+
role: credo_ts_didcomm_vt_flow_1.VtFlowRole.Applicant,
|
|
141
|
+
flowVariant: credo_ts_didcomm_vt_flow_1.VtFlowVariant.OnboardingProcess,
|
|
142
|
+
})).sort((a, b) => b.createdAt.getTime() - a.createdAt.getTime());
|
|
143
|
+
if (latest && (0, credo_ts_didcomm_vt_flow_1.isVtFlowTerminalState)(latest.state) && latest.state !== credo_ts_didcomm_vt_flow_1.VtFlowState.Error)
|
|
144
|
+
return;
|
|
145
|
+
// The agent validates its own entry when it controls the ECOSYSTEM root of the schema, so
|
|
146
|
+
// there is no peer to send a request to: the interrupted step is the chain outcome itself.
|
|
147
|
+
if (await this.isSelfValidated(participant)) {
|
|
148
|
+
const chain = this.agent.veranaChain;
|
|
149
|
+
if (!chain)
|
|
150
|
+
return;
|
|
151
|
+
await chain.setParticipantOPToValidated({
|
|
152
|
+
id: participant.id,
|
|
153
|
+
validationFees: 0,
|
|
154
|
+
issuanceFees: 0,
|
|
155
|
+
verificationFees: 0,
|
|
156
|
+
});
|
|
157
|
+
await this.triggerResolverBestEffort(chain, participant.id);
|
|
158
|
+
this.logger.info(`[EcsBootstrap] validated the interrupted self-issued participant ${participant.id}`);
|
|
159
|
+
return;
|
|
160
|
+
}
|
|
161
|
+
await (0, didReadiness_1.waitUntilOwnDidIsPubliclyResolvable)(this.agent, this.logger);
|
|
162
|
+
const claims = await this.onboardingClaims(participant.schema_id);
|
|
163
|
+
const record = await new VtFlowOrchestrator_1.VtFlowOrchestrator(this.agent).startOnboardingProcess(Object.assign({ applicantParticipantId: participant.id }, (claims ? { claims } : {})));
|
|
164
|
+
this.logger.info(`[EcsBootstrap] checked the onboarding of participant ${participant.id} (flow ${record.id}, state ${record.state})`);
|
|
165
|
+
}
|
|
166
|
+
async isSelfValidated(participant) {
|
|
167
|
+
if (participant.validator_participant_id == null)
|
|
168
|
+
return false;
|
|
169
|
+
const validator = await this.indexer.getParticipant(participant.validator_participant_id).catch(() => undefined);
|
|
170
|
+
return (validator === null || validator === void 0 ? void 0 : validator.did) === this.agent.did;
|
|
171
|
+
}
|
|
88
172
|
// WL-ECS: only ecosystems on the configured allowlist may provide the essential credential schemas.
|
|
89
173
|
async discoverEcsSchemas(indexer) {
|
|
90
174
|
const ecosystems = await indexer.listEcosystems();
|
|
@@ -108,7 +192,7 @@ class EcsBootstrapService {
|
|
|
108
192
|
const schemas = await indexer.listCredentialSchemas(ecosystemId);
|
|
109
193
|
const classified = await Promise.all(schemas
|
|
110
194
|
.filter(schema => !schema.archived)
|
|
111
|
-
.map(async (schema) => ({ schema, type: await
|
|
195
|
+
.map(async (schema) => ({ schema, type: await (0, vs_agent_model_1.classifyEcsSchema)(schema.json_schema) })));
|
|
112
196
|
const byType = (type) => { var _a; return (_a = classified.find(c => c.type === type)) === null || _a === void 0 ? void 0 : _a.schema; };
|
|
113
197
|
const service = byType(vs_agent_model_1.ECS.SERVICE);
|
|
114
198
|
if (!service)
|
|
@@ -120,20 +204,6 @@ class EcsBootstrapService {
|
|
|
120
204
|
throw new Error('no ECS Organization or Persona credential schema');
|
|
121
205
|
return { credential, credentialType: org ? vs_agent_model_1.ECS.ORG : vs_agent_model_1.ECS.PERSONA, service };
|
|
122
206
|
}
|
|
123
|
-
async classifySchema(schema) {
|
|
124
|
-
var _a;
|
|
125
|
-
try {
|
|
126
|
-
const parsed = JSON.parse(schema.json_schema);
|
|
127
|
-
const byDigest = await (0, vs_agent_model_1.identifySchema)(parsed);
|
|
128
|
-
if (byDigest)
|
|
129
|
-
return byDigest;
|
|
130
|
-
const title = typeof parsed.title === 'string' ? parsed.title : '';
|
|
131
|
-
return (_a = ECS_TITLE_BY_TYPE[title]) !== null && _a !== void 0 ? _a : null;
|
|
132
|
-
}
|
|
133
|
-
catch (_b) {
|
|
134
|
-
return null;
|
|
135
|
-
}
|
|
136
|
-
}
|
|
137
207
|
async ensureHolderParticipant(chain, indexer, schema, credentialType) {
|
|
138
208
|
// If this agent controls the schema's ECOSYSTEM root, it has no external ISSUER to seek a
|
|
139
209
|
// HOLDER credential from — it must become the ISSUER itself (see ensureSelfIssuedParticipant).
|
|
@@ -201,6 +271,7 @@ class EcsBootstrapService {
|
|
|
201
271
|
issuanceFees: 0,
|
|
202
272
|
verificationFees: 0,
|
|
203
273
|
});
|
|
274
|
+
await this.triggerResolverBestEffort(chain, participantId);
|
|
204
275
|
this.logger.info(`[EcsBootstrap] self-issued ISSUER participant ${participantId} for the ECS ${credentialType} schema (ecosystem root ${root.id})`);
|
|
205
276
|
}
|
|
206
277
|
async ensureServiceIssuer(chain, indexer, schema) {
|
|
@@ -215,11 +286,14 @@ class EcsBootstrapService {
|
|
|
215
286
|
this.logger.info(`[EcsBootstrap] reusing Service ISSUER participant ${usable.id}`);
|
|
216
287
|
return;
|
|
217
288
|
}
|
|
218
|
-
const onChainSchema = await
|
|
289
|
+
const onChainSchema = await indexer
|
|
290
|
+
.getCredentialSchema(schema.id)
|
|
291
|
+
.then(blockchain_1.toCredentialSchema)
|
|
292
|
+
.catch(() => undefined);
|
|
219
293
|
if (!onChainSchema)
|
|
220
294
|
throw new Error(`Service schema ${schema.id} not found on chain`);
|
|
221
295
|
if (onChainSchema.issuerOnboardingMode === ISSUER_ONBOARDING_MODE_OPEN) {
|
|
222
|
-
const operatorAuths = await
|
|
296
|
+
const operatorAuths = await indexer.listOperatorAuthorizations(chain.address);
|
|
223
297
|
if (!operatorAuths.some(a => a.msgTypes.includes(SELF_CREATE_MSG))) {
|
|
224
298
|
throw new Error(`operator ${chain.address} has no OperatorAuthorization covering MsgSelfCreateParticipant (required for OPEN issuer onboarding)`);
|
|
225
299
|
}
|
|
@@ -232,6 +306,7 @@ class EcsBootstrapService {
|
|
|
232
306
|
did: this.agent.did,
|
|
233
307
|
effectiveUntil: root.effective_until ? new Date(root.effective_until) : undefined,
|
|
234
308
|
});
|
|
309
|
+
await this.triggerResolverBestEffort(chain, participantId);
|
|
235
310
|
this.logger.info(`[EcsBootstrap] self-created Service ISSUER participant ${participantId}`);
|
|
236
311
|
return;
|
|
237
312
|
}
|
|
@@ -257,6 +332,14 @@ class EcsBootstrapService {
|
|
|
257
332
|
});
|
|
258
333
|
return candidates.find(p => !p.revoked && !p.slashed && p.did !== this.agent.did);
|
|
259
334
|
}
|
|
335
|
+
async triggerResolverBestEffort(chain, participantId) {
|
|
336
|
+
try {
|
|
337
|
+
await chain.triggerResolver(participantId);
|
|
338
|
+
}
|
|
339
|
+
catch (error) {
|
|
340
|
+
this.logger.warn(`[EcsBootstrap] TriggerResolver failed for participant ${participantId}: ${error.message}`);
|
|
341
|
+
}
|
|
342
|
+
}
|
|
260
343
|
isUsableParticipant(p) {
|
|
261
344
|
return (!p.revoked &&
|
|
262
345
|
!p.slashed &&
|
|
@@ -272,6 +355,9 @@ class EcsBootstrapService {
|
|
|
272
355
|
throw new Error('delegated bootstrap requires a public DID');
|
|
273
356
|
if (!this.indexer)
|
|
274
357
|
throw new Error('delegated bootstrap requires the Verana indexer');
|
|
358
|
+
const chain = this.agent.veranaChain;
|
|
359
|
+
if (!chain)
|
|
360
|
+
throw new Error('delegated bootstrap requires the Verana chain');
|
|
275
361
|
if (!this.options.verifyPeer) {
|
|
276
362
|
throw new Error(`cannot verify parent VS ${parentDid}: verifiable public registries are not configured (set VERANA_CHAIN_ID)`);
|
|
277
363
|
}
|
|
@@ -279,68 +365,81 @@ class EcsBootstrapService {
|
|
|
279
365
|
if (!verified) {
|
|
280
366
|
throw new Error(`parent VS ${parentDid} is not a Verifiable Service`);
|
|
281
367
|
}
|
|
282
|
-
const
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
368
|
+
const validator = await this.findParentServiceIssuer(parentDid);
|
|
369
|
+
await this.assertTrustedEcosystem(validator.schema_id);
|
|
370
|
+
// An existing entry means the process already ran, or the operator provisioned it.
|
|
371
|
+
const own = await this.indexer.listParticipants({
|
|
372
|
+
did: this.agent.did,
|
|
373
|
+
role: blockchain_1.ParticipantRole.Holder,
|
|
374
|
+
schemaId: validator.schema_id,
|
|
375
|
+
});
|
|
376
|
+
const existing = own.find(participant => this.isUsableParticipant(participant));
|
|
377
|
+
if (existing) {
|
|
378
|
+
// The parent named by AGENT_DELEGATED_PARENT_VS_DID must be the validator of the entry;
|
|
379
|
+
// any other validator would issue the Service credential of another accountable party.
|
|
380
|
+
if (Number(existing.validator_participant_id) !== validator.id) {
|
|
381
|
+
throw new Error(`HOLDER participant ${existing.id} for the ECS Service schema ${validator.schema_id} names validator ${existing.validator_participant_id}, not the parent VS ${parentDid} (validator ${validator.id})`);
|
|
382
|
+
}
|
|
383
|
+
this.logger.info(`[EcsBootstrap] HOLDER participant ${existing.id} for the ECS Service schema ${validator.schema_id} already exists; the onboarding process continues on its own`);
|
|
384
|
+
return;
|
|
295
385
|
}
|
|
296
|
-
|
|
297
|
-
|
|
386
|
+
// [VSA-VTI-FLOW-OP-NEW] step 1: the applicant submits StartParticipantOP. The agent then
|
|
387
|
+
// reacts to its own chain event and sends the onboarding request, so nothing is awaited here.
|
|
388
|
+
// Direct Issuance does not apply: it needs holder_onboarding_mode = PERMISSIONLESS, and the
|
|
389
|
+
// ECS Service schema uses ISSUER_ONBOARDING_PROCESS.
|
|
390
|
+
const skip = await this.operatorSkipReason(chain);
|
|
391
|
+
if (skip) {
|
|
392
|
+
this.logger.info(`[EcsBootstrap] delegated bootstrap skipped: ${skip}; this agent expects its HOLDER participant to be provisioned out of band, with validator ${validator.id}`);
|
|
393
|
+
return;
|
|
298
394
|
}
|
|
299
|
-
const
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
agentParticipantId: '0',
|
|
304
|
-
walletAgentParticipantId: '0',
|
|
395
|
+
const { participantId } = await chain.startParticipantOP({
|
|
396
|
+
role: types_1.HOLDER_PARTICIPANT_TYPE,
|
|
397
|
+
validatorParticipantId: validator.id,
|
|
398
|
+
did: this.agent.did,
|
|
305
399
|
});
|
|
306
|
-
this.logger.info(`[EcsBootstrap]
|
|
307
|
-
await this.awaitDelegatedOutcome(record.id, parentDid);
|
|
400
|
+
this.logger.info(`[EcsBootstrap] started HOLDER onboarding ${participantId} for the ECS Service schema ${validator.schema_id} with parent VS ${parentDid} (validator ${validator.id})`);
|
|
308
401
|
}
|
|
309
|
-
async
|
|
402
|
+
async findParentServiceIssuer(parentDid) {
|
|
310
403
|
const participants = await this.indexer.listParticipants({
|
|
311
404
|
did: parentDid,
|
|
312
405
|
role: blockchain_1.ParticipantRole.Issuer,
|
|
313
406
|
participantState: blockchain_1.ParticipantState.Active,
|
|
314
407
|
});
|
|
315
408
|
for (const participant of participants) {
|
|
409
|
+
if (participant.revoked || participant.slashed)
|
|
410
|
+
continue;
|
|
316
411
|
const schema = await this.indexer.getCredentialSchema(participant.schema_id).catch(() => undefined);
|
|
317
412
|
if (!schema)
|
|
318
413
|
continue;
|
|
319
|
-
if ((await
|
|
320
|
-
return
|
|
414
|
+
if ((await (0, vs_agent_model_1.classifyEcsSchema)(schema.json_schema)) === vs_agent_model_1.ECS.SERVICE)
|
|
415
|
+
return participant;
|
|
321
416
|
}
|
|
322
417
|
throw new Error(`parent VS ${parentDid} holds no active ISSUER participant for an ECS Service schema`);
|
|
323
418
|
}
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
419
|
+
// WL-ECS: an allowlist is optional in delegated mode, but it binds the flow once the operator sets it.
|
|
420
|
+
async assertTrustedEcosystem(schemaId) {
|
|
421
|
+
var _a;
|
|
422
|
+
const trusted = this.options.trustedEcosystemDids;
|
|
423
|
+
if (!(trusted === null || trusted === void 0 ? void 0 : trusted.length))
|
|
424
|
+
return;
|
|
425
|
+
const schema = await this.indexer.getCredentialSchema(schemaId).catch(() => undefined);
|
|
426
|
+
const ecosystem = schema
|
|
427
|
+
? await this.indexer.getEcosystem(schema.ecosystem_id).catch(() => undefined)
|
|
428
|
+
: undefined;
|
|
429
|
+
if (!ecosystem || ecosystem.archived || !trusted.includes(ecosystem.did)) {
|
|
430
|
+
throw new Error(`the ECS Service schema ${schemaId} belongs to ecosystem ${(_a = ecosystem === null || ecosystem === void 0 ? void 0 : ecosystem.did) !== null && _a !== void 0 ? _a : '<unresolvable>'}, which TRUSTED_ECS_ECOSYSTEM_DIDS does not list`);
|
|
431
|
+
}
|
|
432
|
+
}
|
|
433
|
+
async onboardingClaims(schemaId) {
|
|
434
|
+
if (!this.agent.ecsClaims || !this.agent.did)
|
|
435
|
+
return undefined;
|
|
436
|
+
const schema = await this.agent.indexer.getCredentialSchema(schemaId);
|
|
437
|
+
const ecsKey = schema && (await (0, vs_agent_model_1.classifyEcsSchema)(schema.json_schema));
|
|
438
|
+
if (!ecsKey) {
|
|
439
|
+
this.agent.config.logger.info(`[ecs-claims] schema ${schemaId} is not an ECS schema, sending no claims`);
|
|
440
|
+
return undefined;
|
|
441
|
+
}
|
|
442
|
+
return await (0, ecsClaims_1.composeEcsClaims)(this.agent.ecsClaims, ecsKey, this.agent.config.logger);
|
|
344
443
|
}
|
|
345
444
|
}
|
|
346
445
|
exports.EcsBootstrapService = EcsBootstrapService;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EcsBootstrapService.js","sourceRoot":"","sources":["../../src/bootstrap/EcsBootstrapService.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"EcsBootstrapService.js","sourceRoot":"","sources":["../../src/bootstrap/EcsBootstrapService.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import type { AgentContext, DependencyManager, Module, StorageService } from '@credo-ts/core';
|
|
2
|
+
import type { DidCommConnectionRecord } from '@credo-ts/didcomm';
|
|
3
|
+
import { EventEmitter } from '@credo-ts/core';
|
|
4
|
+
import { DidCommConnectionRepository, DidCommOutOfBandRepository } from '@credo-ts/didcomm';
|
|
5
|
+
export declare const PARENT_CONNECTION_TAG = "parentConnectionId";
|
|
6
|
+
/**
|
|
7
|
+
* Copies the `parentConnectionId` tag from the out-of-band record before the first save.
|
|
8
|
+
* Credo emits the first state change after this save, so the first event has the tag.
|
|
9
|
+
*/
|
|
10
|
+
export declare class ParentConnectionRepository extends DidCommConnectionRepository {
|
|
11
|
+
private readonly outOfBandRepository;
|
|
12
|
+
constructor(storageService: StorageService<DidCommConnectionRecord>, eventEmitter: EventEmitter, outOfBandRepository: DidCommOutOfBandRepository);
|
|
13
|
+
save(agentContext: AgentContext, record: DidCommConnectionRecord): Promise<void>;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Put this module after `didcomm` in the module map. The container uses the last registration.
|
|
17
|
+
*/
|
|
18
|
+
export declare class ParentConnectionModule implements Module {
|
|
19
|
+
register(dependencyManager: DependencyManager): void;
|
|
20
|
+
}
|