@verana-labs/vs-agent-sdk 2.0.0-dev.50 → 2.0.0-dev.51
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/build/blockchain/AuthorizationService.d.ts +5 -1
- package/build/blockchain/AuthorizationService.js +17 -11
- package/build/blockchain/AuthorizationService.js.map +1 -1
- package/build/blockchain/VeranaChainService.d.ts +1 -15
- package/build/blockchain/VeranaChainService.js +1 -143
- package/build/blockchain/VeranaChainService.js.map +1 -1
- package/build/blockchain/VeranaIndexerService.d.ts +8 -1
- package/build/blockchain/VeranaIndexerService.js +102 -0
- 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/stateMutations.js +5 -9
- package/build/blockchain/handlers/stateMutations.js.map +1 -1
- package/build/blockchain/index.d.ts +1 -0
- package/build/blockchain/index.js +1 -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 +0 -70
- package/build/bootstrap/EcsBootstrapService.js +7 -3
- package/build/bootstrap/EcsBootstrapService.js.map +1 -1
- package/build/utils/trustCredentialStore.js +4 -3
- package/build/utils/trustCredentialStore.js.map +1 -1
- package/build/vtFlow/VtFlowOrchestrator.js +6 -6
- package/build/vtFlow/VtFlowOrchestrator.js.map +1 -1
- package/package.json +3 -3
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
import { BaseLogger } from '@credo-ts/core';
|
|
2
2
|
import { VeranaChainService } from './VeranaChainService';
|
|
3
|
+
import { VeranaIndexerService } from './VeranaIndexerService';
|
|
3
4
|
import { CachedVsOperatorAuthorizationRecord } from './types';
|
|
4
5
|
export interface AuthorizationServiceConfig {
|
|
5
6
|
chain: VeranaChainService;
|
|
7
|
+
indexer: VeranaIndexerService;
|
|
6
8
|
logger: BaseLogger;
|
|
7
9
|
corporationId?: number;
|
|
8
10
|
minRefreshIntervalMs?: number;
|
|
@@ -11,13 +13,15 @@ export interface AuthorizationServiceConfig {
|
|
|
11
13
|
export declare class AuthorizationService {
|
|
12
14
|
private vsoaByParticipant;
|
|
13
15
|
private lastRefreshAt;
|
|
16
|
+
private lastRefreshAtBlock;
|
|
14
17
|
private readonly chain;
|
|
18
|
+
private readonly indexer;
|
|
15
19
|
private readonly logger;
|
|
16
20
|
private readonly corporationId?;
|
|
17
21
|
private readonly minRefreshIntervalMs;
|
|
18
22
|
constructor(config: AuthorizationServiceConfig);
|
|
19
23
|
private inScope;
|
|
20
|
-
refreshForOperator(): Promise<void>;
|
|
24
|
+
refreshForOperator(minBlock?: number): Promise<void>;
|
|
21
25
|
invalidateParticipant(participantId: number): void;
|
|
22
26
|
canSign(participantId: number, msgType: string): boolean;
|
|
23
27
|
getVsOperatorAuthorizationRecord(participantId: number): CachedVsOperatorAuthorizationRecord | undefined;
|
|
@@ -7,19 +7,19 @@ function renews(period) {
|
|
|
7
7
|
var _a;
|
|
8
8
|
return period != null && (period.seconds > 0 || ((_a = period.nanos) !== null && _a !== void 0 ? _a : 0) > 0);
|
|
9
9
|
}
|
|
10
|
-
|
|
10
|
+
// An unset expiration means the grant never expires (AUTHZ-CHECK-3 step 4, AUTHZ-CHECK-1 step 2).
|
|
11
|
+
function isAuthorizationActive(expiration, period) {
|
|
11
12
|
return expiration === undefined || expiration.getTime() > Date.now() || renews(period);
|
|
12
13
|
}
|
|
13
|
-
function isVsoaRecordActive(expiration, period) {
|
|
14
|
-
return expiration != null && (expiration.getTime() > Date.now() || renews(period));
|
|
15
|
-
}
|
|
16
14
|
/** VS operator authorization records cached for the admin API (https://github.com/verana-labs/vs-agent/issues/472); operator authorizations are queried on demand. */
|
|
17
15
|
class AuthorizationService {
|
|
18
16
|
constructor(config) {
|
|
19
17
|
var _a;
|
|
20
18
|
this.vsoaByParticipant = new Map();
|
|
21
19
|
this.lastRefreshAt = 0;
|
|
20
|
+
this.lastRefreshAtBlock = 0;
|
|
22
21
|
this.chain = config.chain;
|
|
22
|
+
this.indexer = config.indexer;
|
|
23
23
|
this.logger = config.logger;
|
|
24
24
|
this.corporationId = config.corporationId;
|
|
25
25
|
this.minRefreshIntervalMs = (_a = config.minRefreshIntervalMs) !== null && _a !== void 0 ? _a : 2000;
|
|
@@ -27,12 +27,18 @@ class AuthorizationService {
|
|
|
27
27
|
inScope(corporationId) {
|
|
28
28
|
return this.corporationId === undefined || corporationId === this.corporationId;
|
|
29
29
|
}
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
30
|
+
// `minBlock` is the block of the indexer event that triggered the refresh. The delegation
|
|
31
|
+
// projection has its own checkpoint, so without it a read can still answer with pre-event state.
|
|
32
|
+
async refreshForOperator(minBlock) {
|
|
33
|
+
// Catch-up replays hit the same current chain state, so back-to-back refreshes are skipped,
|
|
34
|
+
// unless the caller needs a block this cache has not covered yet.
|
|
35
|
+
const staleForBlock = minBlock !== undefined && minBlock > this.lastRefreshAtBlock;
|
|
36
|
+
if (!staleForBlock && Date.now() - this.lastRefreshAt < this.minRefreshIntervalMs)
|
|
33
37
|
return;
|
|
34
|
-
const vsoas = await this.
|
|
38
|
+
const vsoas = await this.indexer.listVsOperatorAuthorizations(this.chain.address, minBlock);
|
|
35
39
|
this.lastRefreshAt = Date.now();
|
|
40
|
+
if (minBlock !== undefined)
|
|
41
|
+
this.lastRefreshAtBlock = minBlock;
|
|
36
42
|
const rebuilt = new Map();
|
|
37
43
|
for (const vsoa of vsoas) {
|
|
38
44
|
if (!this.inScope(vsoa.corporationId))
|
|
@@ -51,7 +57,7 @@ class AuthorizationService {
|
|
|
51
57
|
}
|
|
52
58
|
canSign(participantId, msgType) {
|
|
53
59
|
const record = this.vsoaByParticipant.get(participantId);
|
|
54
|
-
return (!!record && record.msgTypes.includes(msgType) &&
|
|
60
|
+
return (!!record && record.msgTypes.includes(msgType) && isAuthorizationActive(record.expiration, record.period));
|
|
55
61
|
}
|
|
56
62
|
getVsOperatorAuthorizationRecord(participantId) {
|
|
57
63
|
return this.vsoaByParticipant.get(participantId);
|
|
@@ -72,10 +78,10 @@ class AuthorizationService {
|
|
|
72
78
|
async callerHoldsOperatorGrant(account, msgType) {
|
|
73
79
|
if (!account.trim())
|
|
74
80
|
return false;
|
|
75
|
-
const auths = await this.
|
|
81
|
+
const auths = await this.indexer.listOperatorAuthorizations(account);
|
|
76
82
|
return auths.some(a => this.inScope(a.corporationId) &&
|
|
77
83
|
a.msgTypes.includes(msgType) &&
|
|
78
|
-
|
|
84
|
+
isAuthorizationActive(a.expiration, a.period));
|
|
79
85
|
}
|
|
80
86
|
}
|
|
81
87
|
exports.AuthorizationService = AuthorizationService;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AuthorizationService.js","sourceRoot":"","sources":["../../src/blockchain/AuthorizationService.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"AuthorizationService.js","sourceRoot":"","sources":["../../src/blockchain/AuthorizationService.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { type DeliverTxResponse } from '@cosmjs/stargate';
|
|
2
|
-
import { Coin, CreateOrUpdateParticipantSessionParams,
|
|
2
|
+
import { Coin, CreateOrUpdateParticipantSessionParams, SelfCreateParticipantParams, SetParticipantOPToValidatedParams, StartParticipantOPParams, VeranaChainConfig } from './types';
|
|
3
3
|
export declare class VeranaChainService {
|
|
4
4
|
private readonly config;
|
|
5
5
|
private signingClient;
|
|
@@ -7,25 +7,13 @@ export declare class VeranaChainService {
|
|
|
7
7
|
private chainId;
|
|
8
8
|
private corporationAddress;
|
|
9
9
|
private gasAdjustment;
|
|
10
|
-
private ppQuery;
|
|
11
|
-
private deQuery;
|
|
12
|
-
private ecQuery;
|
|
13
|
-
private csQuery;
|
|
14
|
-
private diQuery;
|
|
15
10
|
constructor(config: VeranaChainConfig);
|
|
16
11
|
get address(): string;
|
|
17
12
|
get getChainId(): string;
|
|
18
13
|
get corporation(): string;
|
|
19
14
|
get autoTriggerResolverEnabled(): boolean;
|
|
20
15
|
start(): Promise<void>;
|
|
21
|
-
getParticipant(id: number): Promise<Participant | undefined>;
|
|
22
16
|
getBalance(denom?: string): Promise<Coin>;
|
|
23
|
-
hasVsOperatorAuthorization(): Promise<boolean>;
|
|
24
|
-
listOperatorAuthorizations(operator?: string): Promise<OperatorAuthorization[]>;
|
|
25
|
-
listVsOperatorAuthorizations(vsOperator?: string): Promise<VsOperatorAuthorization[]>;
|
|
26
|
-
getEcosystem(id: number): Promise<Ecosystem | undefined>;
|
|
27
|
-
getCredentialSchema(id: number): Promise<CredentialSchema | undefined>;
|
|
28
|
-
getDigest(digest: string): Promise<StoredDigest | undefined>;
|
|
29
17
|
startParticipantOP(params: StartParticipantOPParams): Promise<{
|
|
30
18
|
participantId: number;
|
|
31
19
|
txHash: string;
|
|
@@ -46,8 +34,6 @@ export declare class VeranaChainService {
|
|
|
46
34
|
createOrUpdateParticipantSession(params: CreateOrUpdateParticipantSessionParams): Promise<{
|
|
47
35
|
txHash: string;
|
|
48
36
|
}>;
|
|
49
|
-
findActiveHolderParticipantIdByDid(did: string): Promise<number | undefined>;
|
|
50
|
-
findActiveIssuerParticipantId(did: string, schemaId: number): Promise<number | undefined>;
|
|
51
37
|
triggerResolver(participantId: number): Promise<{
|
|
52
38
|
txHash: string;
|
|
53
39
|
}>;
|
|
@@ -7,42 +7,11 @@ const stargate_1 = require("@cosmjs/stargate");
|
|
|
7
7
|
const tendermint_rpc_1 = require("@cosmjs/tendermint-rpc");
|
|
8
8
|
const verana_types_1 = require("@verana-labs/verana-types");
|
|
9
9
|
const types_1 = require("./types");
|
|
10
|
-
const { QueryClientImpl: CsQueryClientImpl } = require('@verana-labs/verana-types/codec/verana/cs/v1/query');
|
|
11
|
-
const { QueryClientImpl: DeQueryClientImpl } = require('@verana-labs/verana-types/codec/verana/de/v1/query');
|
|
12
|
-
const { QueryClientImpl: DiQueryClientImpl } = require('@verana-labs/verana-types/codec/verana/di/v1/query');
|
|
13
|
-
const { QueryClientImpl: EcQueryClientImpl, QueryGetEcosystemRequest, } = require('@verana-labs/verana-types/codec/verana/ec/v1/query');
|
|
14
|
-
const { QueryClientImpl: PpQueryClientImpl, QueryListParticipantsRequest, } = require('@verana-labs/verana-types/codec/verana/pp/v1/query');
|
|
15
10
|
const { MsgSetParticipantOPToValidated, MsgCreateOrUpdateParticipantSession, MsgTriggerResolver, MsgStartParticipantOP, MsgStartParticipantOPResponse, MsgRenewParticipantOP, MsgCancelParticipantOPLastRequest, MsgSelfCreateParticipant, MsgSelfCreateParticipantResponse, } = require('@verana-labs/verana-types/codec/verana/pp/v1/tx');
|
|
16
|
-
// ParticipantRole.HOLDER (x/pp/types); the only role whose vs_operator may send TriggerResolver (chain Path 1).
|
|
17
|
-
const PARTICIPANT_ROLE_HOLDER = 6;
|
|
18
|
-
const PARTICIPANT_ROLE_ISSUER = 1;
|
|
19
|
-
// QueryListParticipantsRequest.response_max_size caps at 1024 and defaults to 64. The node applies
|
|
20
|
-
// the other filters loosely, so ask for the largest page and match the fields again here.
|
|
21
|
-
const PARTICIPANT_QUERY_MAX_SIZE = 1024;
|
|
22
11
|
// A simulation signs with an empty signature and runs against the state of the moment, so it
|
|
23
12
|
// reports less gas than the delivery consumes. Cosmos SDK 0.47 made the difference larger (see
|
|
24
13
|
// cosmos-sdk#16020), and cosmjs answers it with a default multiplier of 1.4. Not always enough.
|
|
25
14
|
const DEFAULT_GAS_ADJUSTMENT = 1.5;
|
|
26
|
-
// the chain answers a query for an unknown record with a NotFound error, not with an empty result
|
|
27
|
-
function isNotFoundError(error) {
|
|
28
|
-
var _a;
|
|
29
|
-
return /not found|NotFound|key not found/i.test((_a = error === null || error === void 0 ? void 0 : error.message) !== null && _a !== void 0 ? _a : '');
|
|
30
|
-
}
|
|
31
|
-
function mapParticipant(p) {
|
|
32
|
-
var _a;
|
|
33
|
-
return {
|
|
34
|
-
id: p.id,
|
|
35
|
-
schemaId: p.schemaId,
|
|
36
|
-
role: p.role,
|
|
37
|
-
did: p.did,
|
|
38
|
-
corporation: p.corporationId != null ? String(p.corporationId) : '',
|
|
39
|
-
validatorParticipantId: p.validatorParticipantId,
|
|
40
|
-
opState: p.opState,
|
|
41
|
-
opSummaryDigest: (_a = p.opSummaryDigest) !== null && _a !== void 0 ? _a : '',
|
|
42
|
-
revoked: p.revoked,
|
|
43
|
-
slashed: p.slashed,
|
|
44
|
-
};
|
|
45
|
-
}
|
|
46
15
|
class VeranaChainService {
|
|
47
16
|
constructor(config) {
|
|
48
17
|
this.config = config;
|
|
@@ -81,94 +50,11 @@ class VeranaChainService {
|
|
|
81
50
|
throw new Error(`[VeranaChain] Chain ID mismatch: expected "${chainId}", got "${this.chainId}"`);
|
|
82
51
|
}
|
|
83
52
|
logger.info(`[VeranaChain] Connected to chain: ${this.chainId}`);
|
|
84
|
-
const queryClient = new stargate_1.QueryClient(cometClient);
|
|
85
|
-
const rpc = (0, stargate_1.createProtobufRpcClient)(queryClient);
|
|
86
|
-
this.ppQuery = new PpQueryClientImpl(rpc);
|
|
87
|
-
this.deQuery = new DeQueryClientImpl(rpc);
|
|
88
|
-
this.ecQuery = new EcQueryClientImpl(rpc);
|
|
89
|
-
this.csQuery = new CsQueryClientImpl(rpc);
|
|
90
|
-
this.diQuery = new DiQueryClientImpl(rpc);
|
|
91
|
-
}
|
|
92
|
-
// Query API (unsigned)
|
|
93
|
-
async getParticipant(id) {
|
|
94
|
-
const result = await this.ppQuery.GetParticipant({ id });
|
|
95
|
-
return result.participant ? mapParticipant(result.participant) : undefined;
|
|
96
53
|
}
|
|
54
|
+
// [VSA-VPR-QRY]: the one read left on the ledger, the indexer serves no account balance.
|
|
97
55
|
async getBalance(denom = 'uvna') {
|
|
98
56
|
return this.signingClient.getBalance(this.operatorAddress, denom);
|
|
99
57
|
}
|
|
100
|
-
async hasVsOperatorAuthorization() {
|
|
101
|
-
return (await this.listVsOperatorAuthorizations()).length > 0;
|
|
102
|
-
}
|
|
103
|
-
async listOperatorAuthorizations(operator) {
|
|
104
|
-
const result = await this.deQuery.ListOperatorAuthorizations({
|
|
105
|
-
corporationId: 0,
|
|
106
|
-
operator: operator !== null && operator !== void 0 ? operator : this.operatorAddress,
|
|
107
|
-
responseMaxSize: 64,
|
|
108
|
-
});
|
|
109
|
-
return result.operatorAuthorizations.map(a => ({
|
|
110
|
-
id: a.id,
|
|
111
|
-
corporationId: a.corporationId,
|
|
112
|
-
operator: a.operator,
|
|
113
|
-
msgTypes: a.msgTypes,
|
|
114
|
-
expiration: a.expiration,
|
|
115
|
-
period: a.period,
|
|
116
|
-
}));
|
|
117
|
-
}
|
|
118
|
-
async listVsOperatorAuthorizations(vsOperator) {
|
|
119
|
-
const result = await this.deQuery.ListVSOperatorAuthorizations({
|
|
120
|
-
corporationId: 0,
|
|
121
|
-
vsOperator: vsOperator !== null && vsOperator !== void 0 ? vsOperator : this.operatorAddress,
|
|
122
|
-
responseMaxSize: 64,
|
|
123
|
-
});
|
|
124
|
-
return result.vsOperatorAuthorizations.map(a => ({
|
|
125
|
-
id: a.id,
|
|
126
|
-
corporationId: a.corporationId,
|
|
127
|
-
vsOperator: a.vsOperator,
|
|
128
|
-
records: a.records.map(r => ({
|
|
129
|
-
participantId: r.participantId,
|
|
130
|
-
msgTypes: r.msgTypes,
|
|
131
|
-
withFeegrant: r.withFeegrant,
|
|
132
|
-
expiration: r.expiration,
|
|
133
|
-
period: r.period,
|
|
134
|
-
})),
|
|
135
|
-
}));
|
|
136
|
-
}
|
|
137
|
-
async getEcosystem(id) {
|
|
138
|
-
// fromPartial fills the unused request fields with defaults so the request encodes correctly.
|
|
139
|
-
const result = await this.ecQuery.GetEcosystem(QueryGetEcosystemRequest.fromPartial({ id }));
|
|
140
|
-
if (!result.ecosystem)
|
|
141
|
-
return undefined;
|
|
142
|
-
const { id: ecosystemId, did, corporationId, archived, activeVersion } = result.ecosystem;
|
|
143
|
-
return { id: ecosystemId, did, corporationId, archived, activeVersion };
|
|
144
|
-
}
|
|
145
|
-
async getCredentialSchema(id) {
|
|
146
|
-
const result = await this.csQuery.GetCredentialSchema({ id });
|
|
147
|
-
if (!result.schema)
|
|
148
|
-
return undefined;
|
|
149
|
-
const s = result.schema;
|
|
150
|
-
return {
|
|
151
|
-
id: s.id,
|
|
152
|
-
ecosystemId: s.ecosystemId,
|
|
153
|
-
jsonSchema: s.jsonSchema,
|
|
154
|
-
digestAlgorithm: s.digestAlgorithm,
|
|
155
|
-
issuerOnboardingMode: s.issuerOnboardingMode,
|
|
156
|
-
verifierOnboardingMode: s.verifierOnboardingMode,
|
|
157
|
-
holderOnboardingMode: s.holderOnboardingMode,
|
|
158
|
-
archived: s.archived,
|
|
159
|
-
};
|
|
160
|
-
}
|
|
161
|
-
async getDigest(digest) {
|
|
162
|
-
try {
|
|
163
|
-
const result = await this.diQuery.GetDigest({ digest });
|
|
164
|
-
return result.digest;
|
|
165
|
-
}
|
|
166
|
-
catch (error) {
|
|
167
|
-
if (isNotFoundError(error))
|
|
168
|
-
return undefined;
|
|
169
|
-
throw error;
|
|
170
|
-
}
|
|
171
|
-
}
|
|
172
58
|
// Transaction API (signed)
|
|
173
59
|
async startParticipantOP(params) {
|
|
174
60
|
var _a, _b;
|
|
@@ -266,34 +152,6 @@ class VeranaChainService {
|
|
|
266
152
|
});
|
|
267
153
|
return { txHash: result.transactionHash };
|
|
268
154
|
}
|
|
269
|
-
async findActiveHolderParticipantIdByDid(did) {
|
|
270
|
-
var _a;
|
|
271
|
-
// fromPartial fills the unused fields with defaults so the request encodes correctly.
|
|
272
|
-
const request = QueryListParticipantsRequest.fromPartial({
|
|
273
|
-
did,
|
|
274
|
-
role: PARTICIPANT_ROLE_HOLDER,
|
|
275
|
-
responseMaxSize: PARTICIPANT_QUERY_MAX_SIZE,
|
|
276
|
-
});
|
|
277
|
-
const { participants } = await this.ppQuery.ListParticipants(request);
|
|
278
|
-
return (_a = participants.find(p => p.did === did && p.role === PARTICIPANT_ROLE_HOLDER && !p.revoked && !p.slashed)) === null || _a === void 0 ? void 0 : _a.id;
|
|
279
|
-
}
|
|
280
|
-
async findActiveIssuerParticipantId(did, schemaId) {
|
|
281
|
-
var _a;
|
|
282
|
-
const request = QueryListParticipantsRequest.fromPartial({
|
|
283
|
-
did,
|
|
284
|
-
schemaId,
|
|
285
|
-
role: PARTICIPANT_ROLE_ISSUER,
|
|
286
|
-
grantee: this.operatorAddress,
|
|
287
|
-
responseMaxSize: PARTICIPANT_QUERY_MAX_SIZE,
|
|
288
|
-
});
|
|
289
|
-
const { participants } = await this.ppQuery.ListParticipants(request);
|
|
290
|
-
return (_a = participants.find(p => p.did === did &&
|
|
291
|
-
p.role === PARTICIPANT_ROLE_ISSUER &&
|
|
292
|
-
p.schemaId === schemaId &&
|
|
293
|
-
p.vsOperator === this.operatorAddress &&
|
|
294
|
-
!p.revoked &&
|
|
295
|
-
!p.slashed)) === null || _a === void 0 ? void 0 : _a.id;
|
|
296
|
-
}
|
|
297
155
|
async triggerResolver(participantId) {
|
|
298
156
|
const value = MsgTriggerResolver.fromPartial({
|
|
299
157
|
corporation: this.corporationAddress,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VeranaChainService.js","sourceRoot":"","sources":["../../src/blockchain/VeranaChainService.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"VeranaChainService.js","sourceRoot":"","sources":["../../src/blockchain/VeranaChainService.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { CorporationDto, CredentialSchemaDto, DigestDto, EcosystemDto, ParticipantRole, ParticipantState, IndexerEventsResponse, ParticipantDto, ParticipantSessionDto, VeranaIdxConfig } from './types';
|
|
1
|
+
import { CorporationDto, Participant, OperatorAuthorization, CredentialSchemaDto, DigestDto, EcosystemDto, ParticipantRole, ParticipantState, IndexerEventsResponse, ParticipantDto, ParticipantSessionDto, VeranaIdxConfig, VsOperatorAuthorization } from './types';
|
|
2
2
|
export declare class VeranaIndexerService {
|
|
3
3
|
private readonly config;
|
|
4
4
|
private readonly baseUrl;
|
|
@@ -23,5 +23,12 @@ export declare class VeranaIndexerService {
|
|
|
23
23
|
did?: string;
|
|
24
24
|
participantState?: ParticipantState;
|
|
25
25
|
}): Promise<ParticipantDto[]>;
|
|
26
|
+
findParticipant(id: string | number): Promise<Participant | undefined>;
|
|
27
|
+
findActiveHolderParticipantIdByDid(did: string): Promise<number | undefined>;
|
|
28
|
+
findActiveIssuerParticipantId(did: string, schemaId: number, vsOperator: string): Promise<number | undefined>;
|
|
29
|
+
private delegationPage;
|
|
30
|
+
listOperatorAuthorizations(operator: string, minBlock?: number): Promise<OperatorAuthorization[]>;
|
|
31
|
+
listVsOperatorAuthorizations(vsOperator: string, minBlock?: number): Promise<VsOperatorAuthorization[]>;
|
|
32
|
+
waitForDigest(digest: string): Promise<void>;
|
|
26
33
|
getDigest(digest: string): Promise<DigestDto | undefined>;
|
|
27
34
|
}
|
|
@@ -2,8 +2,26 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.VeranaIndexerService = void 0;
|
|
4
4
|
const util_1 = require("../utils/util");
|
|
5
|
+
const indexerMappers_1 = require("./indexerMappers");
|
|
6
|
+
const types_1 = require("./types");
|
|
5
7
|
// Timeout so one stuck request cannot block the whole sync queue.
|
|
6
8
|
const REQUEST_TIMEOUT_MS = 30000;
|
|
9
|
+
// The delegation projection runs on its own bull job, so it can trail the event stream that told the
|
|
10
|
+
// agent to refresh. `atBlock` is that job's checkpoint: waiting for it closes the read-after-write gap.
|
|
11
|
+
const DELEGATION_CATCHUP_TIMEOUT_MS = 15000;
|
|
12
|
+
const CATCHUP_INTERVAL_MS = 500;
|
|
13
|
+
const DIGEST_CATCHUP_TIMEOUT_MS = 15000;
|
|
14
|
+
function toDuration(raw) {
|
|
15
|
+
var _a;
|
|
16
|
+
if (raw == null)
|
|
17
|
+
return undefined;
|
|
18
|
+
if (typeof raw === 'string') {
|
|
19
|
+
const seconds = Number.parseFloat(raw.endsWith('s') ? raw.slice(0, -1) : raw);
|
|
20
|
+
return Number.isFinite(seconds) ? { seconds: Math.trunc(seconds) } : undefined;
|
|
21
|
+
}
|
|
22
|
+
return { seconds: Number((_a = raw.seconds) !== null && _a !== void 0 ? _a : 0), nanos: raw.nanos };
|
|
23
|
+
}
|
|
24
|
+
const active = (p) => !p.revoked && !p.slashed;
|
|
7
25
|
class VeranaIndexerService {
|
|
8
26
|
constructor(config) {
|
|
9
27
|
this.config = config;
|
|
@@ -77,6 +95,90 @@ class VeranaIndexerService {
|
|
|
77
95
|
const data = await (0, util_1.fetchJson)(`${this.baseUrl}/v4/participant/list?${params.toString()}`, REQUEST_TIMEOUT_MS);
|
|
78
96
|
return data.participants;
|
|
79
97
|
}
|
|
98
|
+
async findParticipant(id) {
|
|
99
|
+
this.config.logger.debug(`[VeranaIndexer] findParticipant id=${id}`);
|
|
100
|
+
const data = await (0, util_1.fetchJson)(`${this.baseUrl}/v4/participant/get/${encodeURIComponent(id)}`, { timeoutMs: REQUEST_TIMEOUT_MS, allowNotFound: true });
|
|
101
|
+
return (data === null || data === void 0 ? void 0 : data.participant) ? (0, indexerMappers_1.toParticipant)(data.participant) : undefined;
|
|
102
|
+
}
|
|
103
|
+
async findActiveHolderParticipantIdByDid(did) {
|
|
104
|
+
var _a;
|
|
105
|
+
const participants = await this.listParticipants({ did, role: types_1.ParticipantRole.Holder });
|
|
106
|
+
return (_a = participants.find(p => p.did === did && p.role === types_1.ParticipantRole.Holder && active(p))) === null || _a === void 0 ? void 0 : _a.id;
|
|
107
|
+
}
|
|
108
|
+
async findActiveIssuerParticipantId(did, schemaId, vsOperator) {
|
|
109
|
+
var _a;
|
|
110
|
+
const participants = await this.listParticipants({ did, schemaId, role: types_1.ParticipantRole.Issuer });
|
|
111
|
+
return (_a = participants.find(p => p.did === did &&
|
|
112
|
+
p.role === types_1.ParticipantRole.Issuer &&
|
|
113
|
+
p.schema_id === schemaId &&
|
|
114
|
+
p.vs_operator === vsOperator &&
|
|
115
|
+
active(p))) === null || _a === void 0 ? void 0 : _a.id;
|
|
116
|
+
}
|
|
117
|
+
async delegationPage(path, minBlock) {
|
|
118
|
+
var _a, _b;
|
|
119
|
+
const deadline = Date.now() + DELEGATION_CATCHUP_TIMEOUT_MS;
|
|
120
|
+
for (;;) {
|
|
121
|
+
const data = await (0, util_1.fetchJson)(`${this.baseUrl}${path}`, REQUEST_TIMEOUT_MS);
|
|
122
|
+
const atBlock = (_a = data.atBlock) !== null && _a !== void 0 ? _a : 0;
|
|
123
|
+
if (minBlock === undefined || atBlock >= minBlock)
|
|
124
|
+
return (_b = data.authorizations) !== null && _b !== void 0 ? _b : [];
|
|
125
|
+
if (Date.now() >= deadline) {
|
|
126
|
+
throw new Error(`[VeranaIndexer] delegation checkpoint ${atBlock} never reached block ${minBlock} for ${path}`);
|
|
127
|
+
}
|
|
128
|
+
await new Promise(resolve => setTimeout(resolve, CATCHUP_INTERVAL_MS));
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
async listOperatorAuthorizations(operator, minBlock) {
|
|
132
|
+
this.config.logger.debug(`[VeranaIndexer] listOperatorAuthorizations operator=${operator}`);
|
|
133
|
+
const rows = await this.delegationPage(`/v4/delegation/operator-authorizations?operator=${encodeURIComponent(operator)}`, minBlock);
|
|
134
|
+
return rows.map(a => {
|
|
135
|
+
var _a;
|
|
136
|
+
return ({
|
|
137
|
+
id: a.id,
|
|
138
|
+
corporationId: a.corporation_id,
|
|
139
|
+
operator: a.operator,
|
|
140
|
+
msgTypes: (_a = a.msg_types) !== null && _a !== void 0 ? _a : [],
|
|
141
|
+
expiration: a.expiration ? new Date(a.expiration) : undefined,
|
|
142
|
+
period: toDuration(a.period),
|
|
143
|
+
});
|
|
144
|
+
});
|
|
145
|
+
}
|
|
146
|
+
async listVsOperatorAuthorizations(vsOperator, minBlock) {
|
|
147
|
+
this.config.logger.debug(`[VeranaIndexer] listVsOperatorAuthorizations vs_operator=${vsOperator}`);
|
|
148
|
+
const rows = await this.delegationPage(`/v4/delegation/vs-operator-authorizations?vs_operator=${encodeURIComponent(vsOperator)}`, minBlock);
|
|
149
|
+
return rows.map(a => {
|
|
150
|
+
var _a;
|
|
151
|
+
return ({
|
|
152
|
+
id: a.id,
|
|
153
|
+
corporationId: a.corporation_id,
|
|
154
|
+
vsOperator: a.vs_operator,
|
|
155
|
+
records: ((_a = a.records) !== null && _a !== void 0 ? _a : []).map(r => {
|
|
156
|
+
var _a;
|
|
157
|
+
return ({
|
|
158
|
+
participantId: r.participant_id,
|
|
159
|
+
msgTypes: (_a = r.msg_types) !== null && _a !== void 0 ? _a : [],
|
|
160
|
+
withFeegrant: Boolean(r.with_feegrant),
|
|
161
|
+
expiration: r.expiration ? new Date(r.expiration) : undefined,
|
|
162
|
+
period: toDuration(r.period),
|
|
163
|
+
});
|
|
164
|
+
}),
|
|
165
|
+
});
|
|
166
|
+
});
|
|
167
|
+
}
|
|
168
|
+
// Anchoring is a write this agent reads back on its next run, so the redundant-transaction check
|
|
169
|
+
// only holds if the indexer has caught up first. A timeout costs one extra anchoring, not a boot.
|
|
170
|
+
async waitForDigest(digest) {
|
|
171
|
+
const deadline = Date.now() + DIGEST_CATCHUP_TIMEOUT_MS;
|
|
172
|
+
for (;;) {
|
|
173
|
+
if (await this.getDigest(digest))
|
|
174
|
+
return;
|
|
175
|
+
if (Date.now() >= deadline) {
|
|
176
|
+
this.config.logger.warn(`[VeranaIndexer] digest ${digest} was not indexed before the deadline`);
|
|
177
|
+
return;
|
|
178
|
+
}
|
|
179
|
+
await new Promise(resolve => setTimeout(resolve, CATCHUP_INTERVAL_MS));
|
|
180
|
+
}
|
|
181
|
+
}
|
|
80
182
|
async getDigest(digest) {
|
|
81
183
|
this.config.logger.debug(`[VeranaIndexer] getDigest digest=${digest}`);
|
|
82
184
|
const data = await (0, util_1.fetchJson)(`${this.baseUrl}/v4/di/get/${encodeURIComponent(digest)}`, { timeoutMs: REQUEST_TIMEOUT_MS, allowNotFound: true });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VeranaIndexerService.js","sourceRoot":"","sources":["../../src/blockchain/VeranaIndexerService.ts"],"names":[],"mappings":";;;AAAA,wCAAyC;
|
|
1
|
+
{"version":3,"file":"VeranaIndexerService.js","sourceRoot":"","sources":["../../src/blockchain/VeranaIndexerService.ts"],"names":[],"mappings":"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"}
|
|
@@ -40,14 +40,14 @@ function registerAuthorizationHandlers(registry, authorizationService) {
|
|
|
40
40
|
});
|
|
41
41
|
};
|
|
42
42
|
for (const msg of REFRESH_MSGS) {
|
|
43
|
-
wrap(msg,
|
|
43
|
+
wrap(msg, activity => authorizationService.refreshForOperator(Number(activity.block_height)));
|
|
44
44
|
}
|
|
45
45
|
for (const msg of REVOKE_MSGS) {
|
|
46
46
|
wrap(msg, async (activity) => {
|
|
47
47
|
const participantId = Number(activity.entity_id);
|
|
48
48
|
if (Number.isFinite(participantId))
|
|
49
49
|
authorizationService.invalidateParticipant(participantId);
|
|
50
|
-
await authorizationService.refreshForOperator();
|
|
50
|
+
await authorizationService.refreshForOperator(Number(activity.block_height));
|
|
51
51
|
});
|
|
52
52
|
}
|
|
53
53
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"authorizationHandlers.js","sourceRoot":"","sources":["../../../src/blockchain/handlers/authorizationHandlers.ts"],"names":[],"mappings":";;AA4BA,sEAiCC;AAxDD,4GAA4G;AAC5G,yCAAyC;AACzC,MAAM,YAAY,GAAG;IACnB,oBAAoB;IACpB,uBAAuB;IACvB,uBAAuB;IACvB,6BAA6B;IAC7B,8BAA8B;IAC9B,8BAA8B;IAC9B,+BAA+B;IAC/B,4BAA4B;IAC5B,6BAA6B;CACrB,CAAA;AAEV,wGAAwG;AACxG,MAAM,WAAW,GAAG;IAClB,mBAAmB;IACnB,8BAA8B;IAC9B,gCAAgC;IAChC,+BAA+B;CACvB,CAAA;AAEV,8FAA8F;AAC9F,SAAgB,6BAA6B,CAC3C,QAAgC,EAChC,oBAA0C;IAE1C,MAAM,IAAI,GAAG,CAAC,GAAW,EAAE,MAA2D,EAAQ,EAAE;QAC9F,MAAM,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;QAClC,QAAQ,CAAC,QAAQ,CAAC;YAChB,GAAG;YACH,MAAM,EAAE,KAAK,EAAE,QAAyB,EAAE,GAA0B,EAAE,EAAE;gBACtE,IAAI,QAAQ;oBAAE,MAAM,QAAQ,CAAC,MAAM,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAA;gBAClD,IAAI,CAAC;oBACH,MAAM,MAAM,CAAC,QAAQ,CAAC,CAAA;gBACxB,CAAC;gBAAC,OAAO,CAAC,EAAE,CAAC;oBACX,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAC3B,4CAA4C,GAAG,EAAE,EACjD,CAA4B,CAC7B,CAAA;gBACH,CAAC;YACH,CAAC;SACF,CAAC,CAAA;IACJ,CAAC,CAAA;IAED,KAAK,MAAM,GAAG,IAAI,YAAY,EAAE,CAAC;QAC/B,IAAI,CAAC,GAAG,EAAE,
|
|
1
|
+
{"version":3,"file":"authorizationHandlers.js","sourceRoot":"","sources":["../../../src/blockchain/handlers/authorizationHandlers.ts"],"names":[],"mappings":";;AA4BA,sEAiCC;AAxDD,4GAA4G;AAC5G,yCAAyC;AACzC,MAAM,YAAY,GAAG;IACnB,oBAAoB;IACpB,uBAAuB;IACvB,uBAAuB;IACvB,6BAA6B;IAC7B,8BAA8B;IAC9B,8BAA8B;IAC9B,+BAA+B;IAC/B,4BAA4B;IAC5B,6BAA6B;CACrB,CAAA;AAEV,wGAAwG;AACxG,MAAM,WAAW,GAAG;IAClB,mBAAmB;IACnB,8BAA8B;IAC9B,gCAAgC;IAChC,+BAA+B;CACvB,CAAA;AAEV,8FAA8F;AAC9F,SAAgB,6BAA6B,CAC3C,QAAgC,EAChC,oBAA0C;IAE1C,MAAM,IAAI,GAAG,CAAC,GAAW,EAAE,MAA2D,EAAQ,EAAE;QAC9F,MAAM,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;QAClC,QAAQ,CAAC,QAAQ,CAAC;YAChB,GAAG;YACH,MAAM,EAAE,KAAK,EAAE,QAAyB,EAAE,GAA0B,EAAE,EAAE;gBACtE,IAAI,QAAQ;oBAAE,MAAM,QAAQ,CAAC,MAAM,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAA;gBAClD,IAAI,CAAC;oBACH,MAAM,MAAM,CAAC,QAAQ,CAAC,CAAA;gBACxB,CAAC;gBAAC,OAAO,CAAC,EAAE,CAAC;oBACX,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAC3B,4CAA4C,GAAG,EAAE,EACjD,CAA4B,CAC7B,CAAA;gBACH,CAAC;YACH,CAAC;SACF,CAAC,CAAA;IACJ,CAAC,CAAA;IAED,KAAK,MAAM,GAAG,IAAI,YAAY,EAAE,CAAC;QAC/B,IAAI,CAAC,GAAG,EAAE,QAAQ,CAAC,EAAE,CAAC,oBAAoB,CAAC,kBAAkB,CAAC,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC,CAAA;IAC/F,CAAC;IAED,KAAK,MAAM,GAAG,IAAI,WAAW,EAAE,CAAC;QAC9B,IAAI,CAAC,GAAG,EAAE,KAAK,EAAC,QAAQ,EAAC,EAAE;YACzB,MAAM,aAAa,GAAG,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAA;YAChD,IAAI,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAC;gBAAE,oBAAoB,CAAC,qBAAqB,CAAC,aAAa,CAAC,CAAA;YAC7F,MAAM,oBAAoB,CAAC,kBAAkB,CAAC,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAA;QAC9E,CAAC,CAAC,CAAA;IACJ,CAAC;AACH,CAAC"}
|
|
@@ -181,8 +181,7 @@ async function markVtFlowRecordsValidated(agent, participantId) {
|
|
|
181
181
|
* ever. The applicant reaches its own record here, because it watches the same chain event.
|
|
182
182
|
*/
|
|
183
183
|
async function completeVtFlowRecordsWithoutCredential(agent, participantId) {
|
|
184
|
-
|
|
185
|
-
const participant = await ((_a = agent.veranaChain) === null || _a === void 0 ? void 0 : _a.getParticipant(Number(participantId)));
|
|
184
|
+
const participant = await agent.indexer.findParticipant(participantId).catch(() => undefined);
|
|
186
185
|
if (!participant || participant.role === types_1.HOLDER_PARTICIPANT_TYPE)
|
|
187
186
|
return;
|
|
188
187
|
await reconcileVtFlowRecordsForParticipant(agent, participantId, async (record, service, agentContext) => {
|
|
@@ -224,8 +223,7 @@ async function setVtFlowRecordsParticipantSlashed(agent, participantId) {
|
|
|
224
223
|
}
|
|
225
224
|
/** VSA-VTI-FLOW-OP-REVOKE: a revoked/slashed HOLDER's credential is gone; drop its linked VP and stored VTC. */
|
|
226
225
|
async function removeHolderTrustCredentialIfRevoked(agent, participantId) {
|
|
227
|
-
|
|
228
|
-
const participant = await ((_a = agent.veranaChain) === null || _a === void 0 ? void 0 : _a.getParticipant(Number(participantId)).catch(() => undefined));
|
|
226
|
+
const participant = await agent.indexer.findParticipant(participantId).catch(() => undefined);
|
|
229
227
|
if ((participant === null || participant === void 0 ? void 0 : participant.role) !== types_1.HOLDER_PARTICIPANT_TYPE || participant.did !== agent.did)
|
|
230
228
|
return;
|
|
231
229
|
if (!agent.publicApiBaseUrl)
|
|
@@ -252,10 +250,9 @@ async function removeHolderTrustCredentialIfRevoked(agent, participantId) {
|
|
|
252
250
|
* resolver reports the Participant as REVOKED and the whole DID then fails VS-CONN-VS.
|
|
253
251
|
*/
|
|
254
252
|
async function removeSelfIssuedEcsCredentialsIfIssuerRevoked(agent, participantId) {
|
|
255
|
-
var _a;
|
|
256
253
|
if (!agent.publicApiBaseUrl)
|
|
257
254
|
return;
|
|
258
|
-
const participant = await
|
|
255
|
+
const participant = await agent.indexer.findParticipant(participantId).catch(() => undefined);
|
|
259
256
|
if ((participant === null || participant === void 0 ? void 0 : participant.role) !== types_1.ISSUER_PARTICIPANT_TYPE || participant.did !== agent.did)
|
|
260
257
|
return;
|
|
261
258
|
try {
|
|
@@ -269,8 +266,7 @@ async function removeSelfIssuedEcsCredentialsIfIssuerRevoked(agent, participantI
|
|
|
269
266
|
}
|
|
270
267
|
}
|
|
271
268
|
async function reconcileVtFlowRecordsOnCancel(agent, participantId) {
|
|
272
|
-
|
|
273
|
-
const participant = await ((_a = agent.veranaChain) === null || _a === void 0 ? void 0 : _a.getParticipant(Number(participantId)).catch(() => undefined));
|
|
269
|
+
const participant = await agent.indexer.findParticipant(participantId).catch(() => undefined);
|
|
274
270
|
const stillValidated = Number(participant === null || participant === void 0 ? void 0 : participant.opState) === types_2.ValidationState.VALIDATED;
|
|
275
271
|
await reconcileVtFlowRecordsForParticipant(agent, participantId, async (record, service, agentContext) => {
|
|
276
272
|
if ((0, credo_ts_didcomm_vt_flow_1.isVtFlowTerminalState)(record.state))
|
|
@@ -306,7 +302,7 @@ async function startParticipantOPAutoFlow(agent, activity) {
|
|
|
306
302
|
const applicantParticipantId = Number(activity.entity_id);
|
|
307
303
|
if (!Number.isFinite(applicantParticipantId))
|
|
308
304
|
return;
|
|
309
|
-
const holderParticipant = await
|
|
305
|
+
const holderParticipant = await agent.indexer.findParticipant(applicantParticipantId);
|
|
310
306
|
if (!holderParticipant || holderParticipant.did !== agent.did)
|
|
311
307
|
return;
|
|
312
308
|
try {
|