@verana-labs/vs-agent-sdk 2.0.0-dev.75 → 2.0.0-dev.77
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/agent/VsAgent.d.ts +5 -0
- package/build/agent/VsAgent.js +9 -0
- package/build/agent/VsAgent.js.map +1 -1
- package/build/blockchain/VeranaChainService.d.ts +12 -8
- package/build/blockchain/VeranaChainService.js +37 -29
- package/build/blockchain/VeranaChainService.js.map +1 -1
- package/build/blockchain/feePreflight.d.ts +32 -0
- package/build/blockchain/feePreflight.js +89 -0
- package/build/blockchain/feePreflight.js.map +1 -0
- 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/triggerResolver.d.ts +26 -0
- package/build/blockchain/triggerResolver.js +120 -0
- package/build/blockchain/triggerResolver.js.map +1 -0
- package/build/blockchain/types.d.ts +0 -1
- package/build/bootstrap/EcsBootstrapService.js +11 -22
- package/build/bootstrap/EcsBootstrapService.js.map +1 -1
- package/build/utils/index.d.ts +1 -0
- package/build/utils/index.js +1 -0
- package/build/utils/index.js.map +1 -1
- package/build/utils/publishedDidRecord.d.ts +15 -0
- package/build/utils/publishedDidRecord.js +83 -0
- package/build/utils/publishedDidRecord.js.map +1 -0
- package/build/utils/selfIssuedEcsCredential.js +6 -11
- package/build/utils/selfIssuedEcsCredential.js.map +1 -1
- package/build/utils/trustCredentialStore.js +11 -16
- package/build/utils/trustCredentialStore.js.map +1 -1
- package/build/vtFlow/VtFlowOrchestrator.d.ts +0 -1
- package/build/vtFlow/VtFlowOrchestrator.js +4 -67
- package/build/vtFlow/VtFlowOrchestrator.js.map +1 -1
- package/package.json +3 -3
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.findResolverParticipantId = findResolverParticipantId;
|
|
4
|
+
exports.triggerResolver = triggerResolver;
|
|
5
|
+
exports.triggerResolverForOwnDid = triggerResolverForOwnDid;
|
|
6
|
+
exports.scheduleTriggerResolverForOwnDid = scheduleTriggerResolverForOwnDid;
|
|
7
|
+
exports.flushPendingTriggerResolvers = flushPendingTriggerResolvers;
|
|
8
|
+
const types_1 = require("./types");
|
|
9
|
+
const verana_types_1 = require("@verana-labs/verana-types");
|
|
10
|
+
const feePreflight_1 = require("./feePreflight");
|
|
11
|
+
/** DID record writes come in bursts, and the resolver reads the current document, so one trigger covers a burst. */
|
|
12
|
+
const COALESCE_WINDOW_MS = 2000;
|
|
13
|
+
const pendingByDid = new Map();
|
|
14
|
+
function errorMessage(error) {
|
|
15
|
+
return error instanceof Error ? error.message : String(error);
|
|
16
|
+
}
|
|
17
|
+
// AUTHZ-CHECK-3 step 1, as the flow orchestrator applies it
|
|
18
|
+
function isActiveParticipant(participant) {
|
|
19
|
+
const now = Date.now();
|
|
20
|
+
if (!participant.effective_from || Date.parse(participant.effective_from) > now)
|
|
21
|
+
return false;
|
|
22
|
+
if (participant.effective_until && Date.parse(participant.effective_until) <= now)
|
|
23
|
+
return false;
|
|
24
|
+
return !participant.revoked && !participant.slashed;
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* [VSA-VPR-TX-5]: an active HOLDER entry of the agent whose `ParticipantAuthorizationRecord` lists
|
|
28
|
+
* `TriggerResolver`. Path 1 of MOD-PP-MSG-15 needs that record, and only a HOLDER record can list
|
|
29
|
+
* the message (MOD-PP-MSG-1-1, MOD-PP-MSG-14-1), so any other entry always fails on chain.
|
|
30
|
+
*/
|
|
31
|
+
async function findResolverParticipantId(agent) {
|
|
32
|
+
var _a;
|
|
33
|
+
const did = agent.did;
|
|
34
|
+
if (!did)
|
|
35
|
+
return undefined;
|
|
36
|
+
const participants = await agent.indexer.listParticipants({ did, role: types_1.ParticipantRole.Holder });
|
|
37
|
+
return (_a = participants.find(p => {
|
|
38
|
+
var _a;
|
|
39
|
+
return p.did === did &&
|
|
40
|
+
p.role === types_1.ParticipantRole.Holder &&
|
|
41
|
+
isActiveParticipant(p) &&
|
|
42
|
+
((_a = agent.authorizationService) === null || _a === void 0 ? void 0 : _a.canSign(p.id, verana_types_1.veranaTypeUrls.MsgTriggerResolver));
|
|
43
|
+
})) === null || _a === void 0 ? void 0 : _a.id;
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* [VSA-VT-LVP-5], [VSA-VPR-TX-4]: sends `TriggerResolver` for one entry, and reports the outcome in
|
|
47
|
+
* the log. A failure is an error line that names the entry, the cause, and the reason: the trust
|
|
48
|
+
* state of the agent stays stale until an operator acts on it. This function never throws.
|
|
49
|
+
*/
|
|
50
|
+
async function triggerResolver(agent, participantId, cause) {
|
|
51
|
+
const chain = agent.veranaChain;
|
|
52
|
+
const logger = agent.config.logger;
|
|
53
|
+
if (!chain)
|
|
54
|
+
return;
|
|
55
|
+
const target = `TriggerResolver for participant ${participantId} (${cause})`;
|
|
56
|
+
const granter = (0, feePreflight_1.feeGranterFor)(agent, participantId);
|
|
57
|
+
try {
|
|
58
|
+
// the fee pre-flight of the broadcast names the payer it could not charge
|
|
59
|
+
const { txHash } = await chain.triggerResolver(participantId, { granter });
|
|
60
|
+
logger.info(`[TriggerResolver] ${target} sent: tx ${txHash}${granter ? `, fee granter ${granter}` : ''}`);
|
|
61
|
+
}
|
|
62
|
+
catch (error) {
|
|
63
|
+
if (error instanceof feePreflight_1.FeePreflightError) {
|
|
64
|
+
logger.error(`[TriggerResolver] ${target} not sent: ${error.reason}: ${error.message}`);
|
|
65
|
+
return;
|
|
66
|
+
}
|
|
67
|
+
logger.error(`[TriggerResolver] ${target} failed: ${errorMessage(error)}`);
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
/** `triggerResolver` for the entry that covers the DID of the agent, when it holds one. Never throws. */
|
|
71
|
+
async function triggerResolverForOwnDid(agent, cause) {
|
|
72
|
+
if (!agent.veranaChain)
|
|
73
|
+
return;
|
|
74
|
+
let participantId;
|
|
75
|
+
try {
|
|
76
|
+
participantId = await findResolverParticipantId(agent);
|
|
77
|
+
}
|
|
78
|
+
catch (error) {
|
|
79
|
+
agent.config.logger.error(`[TriggerResolver] cannot find the Participant entry of ${agent.did} (${cause}): ${errorMessage(error)}`);
|
|
80
|
+
return;
|
|
81
|
+
}
|
|
82
|
+
if (participantId === undefined) {
|
|
83
|
+
agent.config.logger.warn(`[TriggerResolver] no active HOLDER entry of ${agent.did} whose authorization lists TriggerResolver: nothing sent (${cause})`);
|
|
84
|
+
return;
|
|
85
|
+
}
|
|
86
|
+
await triggerResolver(agent, participantId, cause);
|
|
87
|
+
}
|
|
88
|
+
/**
|
|
89
|
+
* Schedules `triggerResolverForOwnDid` after a short window, so that a burst of DID record writes
|
|
90
|
+
* sends one transaction. The call returns at once.
|
|
91
|
+
*/
|
|
92
|
+
function scheduleTriggerResolverForOwnDid(agent, cause) {
|
|
93
|
+
var _a, _b;
|
|
94
|
+
const key = (_a = agent.did) !== null && _a !== void 0 ? _a : '';
|
|
95
|
+
const pending = pendingByDid.get(key);
|
|
96
|
+
if (pending)
|
|
97
|
+
clearTimeout(pending.timer);
|
|
98
|
+
const send = async () => {
|
|
99
|
+
pendingByDid.delete(key);
|
|
100
|
+
await triggerResolverForOwnDid(agent, cause);
|
|
101
|
+
};
|
|
102
|
+
const timer = setTimeout(() => void send(), COALESCE_WINDOW_MS);
|
|
103
|
+
// the window must not hold a shutdown open; `flushPendingTriggerResolvers` sends what it holds
|
|
104
|
+
(_b = timer.unref) === null || _b === void 0 ? void 0 : _b.call(timer);
|
|
105
|
+
pendingByDid.set(key, { timer, send });
|
|
106
|
+
}
|
|
107
|
+
/**
|
|
108
|
+
* Sends every trigger that a coalescing window still holds, and waits for it. The agent calls this
|
|
109
|
+
* when it shuts down: [IDX-VT-EVAL-3] makes the trigger the only signal of a publication change, so a
|
|
110
|
+
* trigger the window still holds at exit would leave the trust state of the agent stale for good.
|
|
111
|
+
*/
|
|
112
|
+
async function flushPendingTriggerResolvers() {
|
|
113
|
+
const pending = [...pendingByDid.values()];
|
|
114
|
+
pendingByDid.clear();
|
|
115
|
+
for (const { timer, send } of pending) {
|
|
116
|
+
clearTimeout(timer);
|
|
117
|
+
await send();
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
//# sourceMappingURL=triggerResolver.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"triggerResolver.js","sourceRoot":"","sources":["../../src/blockchain/triggerResolver.ts"],"names":[],"mappings":"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"}
|
|
@@ -252,7 +252,6 @@ export interface VeranaChainConfig {
|
|
|
252
252
|
gasPrice?: string;
|
|
253
253
|
gasAdjustment?: number;
|
|
254
254
|
corporationAddress?: string;
|
|
255
|
-
autoTriggerResolver?: boolean;
|
|
256
255
|
}
|
|
257
256
|
/** Wrapper for optional uint64 values per `verana.pp.v1.OptionalUInt64`. */
|
|
258
257
|
export interface OptionalUInt64 {
|
|
@@ -5,6 +5,8 @@ const didcomm_1 = require("@credo-ts/didcomm");
|
|
|
5
5
|
const credo_ts_didcomm_vt_flow_1 = require("@verana-labs/credo-ts-didcomm-vt-flow");
|
|
6
6
|
const vs_agent_model_1 = require("@verana-labs/vs-agent-model");
|
|
7
7
|
const blockchain_1 = require("../blockchain");
|
|
8
|
+
const feePreflight_1 = require("../blockchain/feePreflight");
|
|
9
|
+
const triggerResolver_1 = require("../blockchain/triggerResolver");
|
|
8
10
|
const types_1 = require("../types");
|
|
9
11
|
const didReadiness_1 = require("../utils/didReadiness");
|
|
10
12
|
const VtFlowOrchestrator_1 = require("../vtFlow/VtFlowOrchestrator");
|
|
@@ -148,13 +150,8 @@ class EcsBootstrapService {
|
|
|
148
150
|
const chain = this.agent.veranaChain;
|
|
149
151
|
if (!chain)
|
|
150
152
|
return;
|
|
151
|
-
await chain.setParticipantOPToValidated({
|
|
152
|
-
|
|
153
|
-
validationFees: 0,
|
|
154
|
-
issuanceFees: 0,
|
|
155
|
-
verificationFees: 0,
|
|
156
|
-
});
|
|
157
|
-
await this.triggerResolverBestEffort(chain, participant.id);
|
|
153
|
+
await chain.setParticipantOPToValidated({ id: participant.id, validationFees: 0, issuanceFees: 0, verificationFees: 0 }, { granter: (0, feePreflight_1.feeGranterFor)(this.agent, participant.id) });
|
|
154
|
+
await this.triggerResolverBestEffort();
|
|
158
155
|
this.logger.info(`[EcsBootstrap] validated the interrupted self-issued participant ${participant.id}`);
|
|
159
156
|
return;
|
|
160
157
|
}
|
|
@@ -265,13 +262,8 @@ class EcsBootstrapService {
|
|
|
265
262
|
validatorParticipantId: root.id,
|
|
266
263
|
did: this.agent.did,
|
|
267
264
|
});
|
|
268
|
-
await chain.setParticipantOPToValidated({
|
|
269
|
-
|
|
270
|
-
validationFees: 0,
|
|
271
|
-
issuanceFees: 0,
|
|
272
|
-
verificationFees: 0,
|
|
273
|
-
});
|
|
274
|
-
await this.triggerResolverBestEffort(chain, participantId);
|
|
265
|
+
await chain.setParticipantOPToValidated({ id: participantId, validationFees: 0, issuanceFees: 0, verificationFees: 0 }, { granter: (0, feePreflight_1.feeGranterFor)(this.agent, participantId) });
|
|
266
|
+
await this.triggerResolverBestEffort();
|
|
275
267
|
this.logger.info(`[EcsBootstrap] self-issued ISSUER participant ${participantId} for the ECS ${credentialType} schema (ecosystem root ${root.id})`);
|
|
276
268
|
}
|
|
277
269
|
async ensureServiceIssuer(chain, indexer, schema) {
|
|
@@ -306,7 +298,7 @@ class EcsBootstrapService {
|
|
|
306
298
|
did: this.agent.did,
|
|
307
299
|
effectiveUntil: root.effective_until ? new Date(root.effective_until) : undefined,
|
|
308
300
|
});
|
|
309
|
-
await this.triggerResolverBestEffort(
|
|
301
|
+
await this.triggerResolverBestEffort();
|
|
310
302
|
this.logger.info(`[EcsBootstrap] self-created Service ISSUER participant ${participantId}`);
|
|
311
303
|
return;
|
|
312
304
|
}
|
|
@@ -332,13 +324,10 @@ class EcsBootstrapService {
|
|
|
332
324
|
});
|
|
333
325
|
return candidates.find(p => !p.revoked && !p.slashed && p.did !== this.agent.did);
|
|
334
326
|
}
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
catch (error) {
|
|
340
|
-
this.logger.warn(`[EcsBootstrap] TriggerResolver failed for participant ${participantId}: ${error.message}`);
|
|
341
|
-
}
|
|
327
|
+
// [VSA-VPR-TX-5]: the new entry is an ISSUER entry, which cannot carry TriggerResolver, so the
|
|
328
|
+
// trigger names the HOLDER entry of the agent. The helper logs the outcome, and never throws
|
|
329
|
+
async triggerResolverBestEffort() {
|
|
330
|
+
await (0, triggerResolver_1.triggerResolverForOwnDid)(this.agent, 'the agent became a Verifiable Service');
|
|
342
331
|
}
|
|
343
332
|
isUsableParticipant(p) {
|
|
344
333
|
return (!p.revoked &&
|
|
@@ -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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"}
|
package/build/utils/index.d.ts
CHANGED
package/build/utils/index.js
CHANGED
|
@@ -19,6 +19,7 @@ __exportStar(require("./boundedFetch"), exports);
|
|
|
19
19
|
__exportStar(require("./data"), exports);
|
|
20
20
|
__exportStar(require("./ecsClaims"), exports);
|
|
21
21
|
__exportStar(require("./ecsService"), exports);
|
|
22
|
+
__exportStar(require("./publishedDidRecord"), exports);
|
|
22
23
|
__exportStar(require("./setupSelfTr"), exports);
|
|
23
24
|
__exportStar(require("./trustCredentialStore"), exports);
|
|
24
25
|
__exportStar(require("./typeMetadata"), exports);
|
package/build/utils/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0CAAuB;AACvB,iDAA8B;AAC9B,yCAAsB;AACtB,8CAA2B;AAC3B,+CAA4B;AAC5B,gDAA6B;AAC7B,yDAAsC;AACtC,iDAA8B;AAC9B,yCAAsB;AACtB,0CAAuB;AACvB,kDAA+B"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0CAAuB;AACvB,iDAA8B;AAC9B,yCAAsB;AACtB,8CAA2B;AAC3B,+CAA4B;AAC5B,uDAAoC;AACpC,gDAA6B;AAC7B,yDAAsC;AACtC,iDAA8B;AAC9B,yCAAsB;AACtB,0CAAuB;AACvB,kDAA+B"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { DidRecord } from '@credo-ts/core';
|
|
2
|
+
import { VsAgent } from '../agent/VsAgent';
|
|
3
|
+
/**
|
|
4
|
+
* The one write point of the published Verifiable Trust material: the `_vt/vtc` and `_vt/jsc`
|
|
5
|
+
* metadata of the DID record and the DID Document that announces them. [VSA-VT-LVP-5] asks for a
|
|
6
|
+
* `TriggerResolver` after each change of a `LinkedVerifiablePresentation` entry, so the decision
|
|
7
|
+
* lives here rather than in each caller: the stored record is compared with the one written. The DID
|
|
8
|
+
* Document is published only when it changed, so a metadata-only write adds no `did:webvh` version.
|
|
9
|
+
*/
|
|
10
|
+
export declare function updateDidRecord(agent: VsAgent, didRecord: DidRecord): Promise<void>;
|
|
11
|
+
/**
|
|
12
|
+
* What a trust resolver reads of the agent: its `LinkedVerifiablePresentation` entries, and the
|
|
13
|
+
* presentations behind them. Two records with the same fingerprint resolve the same way.
|
|
14
|
+
*/
|
|
15
|
+
export declare function publicationFingerprint(didRecord: DidRecord | null): string;
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.updateDidRecord = updateDidRecord;
|
|
4
|
+
exports.publicationFingerprint = publicationFingerprint;
|
|
5
|
+
const core_1 = require("@credo-ts/core");
|
|
6
|
+
const triggerResolver_1 = require("../blockchain/triggerResolver");
|
|
7
|
+
const adminApiService_1 = require("../did/adminApiService");
|
|
8
|
+
/**
|
|
9
|
+
* The one write point of the published Verifiable Trust material: the `_vt/vtc` and `_vt/jsc`
|
|
10
|
+
* metadata of the DID record and the DID Document that announces them. [VSA-VT-LVP-5] asks for a
|
|
11
|
+
* `TriggerResolver` after each change of a `LinkedVerifiablePresentation` entry, so the decision
|
|
12
|
+
* lives here rather than in each caller: the stored record is compared with the one written. The DID
|
|
13
|
+
* Document is published only when it changed, so a metadata-only write adds no `did:webvh` version.
|
|
14
|
+
*/
|
|
15
|
+
async function updateDidRecord(agent, didRecord) {
|
|
16
|
+
const repo = agent.context.dependencyManager.resolve(core_1.DidRepository);
|
|
17
|
+
(0, adminApiService_1.applyAdminApiServiceEntry)(didRecord.didDocument, agent.adminApiServiceEndpoint);
|
|
18
|
+
const stored = await storedRecord(agent, repo, didRecord.id);
|
|
19
|
+
const publishedBefore = publicationFingerprint(stored);
|
|
20
|
+
const documentBefore = documentFingerprint(stored);
|
|
21
|
+
await repo.update(agent.context, didRecord);
|
|
22
|
+
if (documentFingerprint(didRecord) !== documentBefore) {
|
|
23
|
+
await agent.dids.update({ did: didRecord.did, didDocument: didRecord.didDocument });
|
|
24
|
+
}
|
|
25
|
+
if (publicationFingerprint(didRecord) !== publishedBefore) {
|
|
26
|
+
(0, triggerResolver_1.scheduleTriggerResolverForOwnDid)(agent, 'the published Verifiable Trust material changed');
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
async function storedRecord(agent, repo, id) {
|
|
30
|
+
try {
|
|
31
|
+
return await repo.findById(agent.context, id);
|
|
32
|
+
}
|
|
33
|
+
catch (error) {
|
|
34
|
+
agent.config.logger.debug(`[trust-credential] cannot read the stored DID record: ${error.message}`);
|
|
35
|
+
return null;
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
function stableStringify(value) {
|
|
39
|
+
var _a;
|
|
40
|
+
if (Array.isArray(value))
|
|
41
|
+
return `[${value.map(stableStringify).join(',')}]`;
|
|
42
|
+
if (value && typeof value === 'object') {
|
|
43
|
+
const entries = Object.entries(value)
|
|
44
|
+
.filter(([, v]) => v !== undefined)
|
|
45
|
+
.sort(([a], [b]) => a.localeCompare(b));
|
|
46
|
+
return `{${entries.map(([k, v]) => `${JSON.stringify(k)}:${stableStringify(v)}`).join(',')}}`;
|
|
47
|
+
}
|
|
48
|
+
return (_a = JSON.stringify(value)) !== null && _a !== void 0 ? _a : 'null';
|
|
49
|
+
}
|
|
50
|
+
// a document saved as a class instance reads back from storage as JSON, so both go through JSON
|
|
51
|
+
function asJson(value) {
|
|
52
|
+
return value === undefined ? undefined : JSON.parse(JSON.stringify(value));
|
|
53
|
+
}
|
|
54
|
+
/** What the agent serves as its DID Document. Two records with the same fingerprint serve the same. */
|
|
55
|
+
function documentFingerprint(didRecord) {
|
|
56
|
+
if (!(didRecord === null || didRecord === void 0 ? void 0 : didRecord.didDocument))
|
|
57
|
+
return '';
|
|
58
|
+
return stableStringify(asJson(didRecord.didDocument));
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* What a trust resolver reads of the agent: its `LinkedVerifiablePresentation` entries, and the
|
|
62
|
+
* presentations behind them. Two records with the same fingerprint resolve the same way.
|
|
63
|
+
*/
|
|
64
|
+
function publicationFingerprint(didRecord) {
|
|
65
|
+
var _a, _b;
|
|
66
|
+
if (!didRecord)
|
|
67
|
+
return '';
|
|
68
|
+
const services = ((_b = (_a = didRecord.didDocument) === null || _a === void 0 ? void 0 : _a.service) !== null && _b !== void 0 ? _b : [])
|
|
69
|
+
.filter(service => service.type === 'LinkedVerifiablePresentation')
|
|
70
|
+
.map(service => ({ id: service.id, serviceEndpoint: service.serviceEndpoint }))
|
|
71
|
+
.sort((a, b) => a.id.localeCompare(b.id));
|
|
72
|
+
const presentations = ['_vt/vtc', '_vt/jsc'].map(key => {
|
|
73
|
+
var _a;
|
|
74
|
+
return Object.entries((_a = didRecord.metadata.get(key)) !== null && _a !== void 0 ? _a : {})
|
|
75
|
+
.map(([schemaId, entry]) => ({
|
|
76
|
+
schemaId,
|
|
77
|
+
presentation: entry.verifiablePresentation,
|
|
78
|
+
}))
|
|
79
|
+
.sort((a, b) => a.schemaId.localeCompare(b.schemaId));
|
|
80
|
+
});
|
|
81
|
+
return stableStringify(asJson({ services, presentations }));
|
|
82
|
+
}
|
|
83
|
+
//# sourceMappingURL=publishedDidRecord.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"publishedDidRecord.js","sourceRoot":"","sources":["../../src/utils/publishedDidRecord.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,6 +4,7 @@ exports.publishSelfIssuedEcsPresentation = publishSelfIssuedEcsPresentation;
|
|
|
4
4
|
const core_1 = require("@credo-ts/core");
|
|
5
5
|
const vs_agent_model_1 = require("@verana-labs/vs-agent-model");
|
|
6
6
|
const setupSelfTr_1 = require("./setupSelfTr");
|
|
7
|
+
const publishedDidRecord_1 = require("./publishedDidRecord");
|
|
7
8
|
const vcdm2_1 = require("./vcdm2");
|
|
8
9
|
const buildIntegrityData = (data) => {
|
|
9
10
|
return (0, setupSelfTr_1.generateDigestSRI)(JSON.stringify((0, setupSelfTr_1.sortKeysDeep)(data)));
|
|
@@ -111,7 +112,6 @@ async function publishSelfIssuedEcsPresentation(agent, id, ecsSchemas, schemaKey
|
|
|
111
112
|
// Resolvers only discover the credential through the [VT-CRED-W3C-LINKED-VP] fragment, and
|
|
112
113
|
// #whois does not match it. The rename above only covers documents that already carry the
|
|
113
114
|
// service, so publish it here when nothing declared it yet.
|
|
114
|
-
let didDocumentChanged = false;
|
|
115
115
|
if (attached && !((_d = didDocument.service) === null || _d === void 0 ? void 0 : _d.some(s => s.id === didDocumentServiceId))) {
|
|
116
116
|
didDocument.service = [
|
|
117
117
|
...((_e = didDocument.service) !== null && _e !== void 0 ? _e : []),
|
|
@@ -121,23 +121,18 @@ async function publishSelfIssuedEcsPresentation(agent, id, ecsSchemas, schemaKey
|
|
|
121
121
|
type: 'LinkedVerifiablePresentation',
|
|
122
122
|
}),
|
|
123
123
|
];
|
|
124
|
-
didDocumentChanged = true;
|
|
125
124
|
}
|
|
126
125
|
const whoisId = `${agent.did}#whois`;
|
|
127
126
|
if (attached && schemaKey === 'ecs-service') {
|
|
128
127
|
const whois = (_f = didDocument.service) === null || _f === void 0 ? void 0 : _f.find(s => s.id === whoisId);
|
|
129
128
|
if (whois) {
|
|
130
|
-
|
|
131
|
-
whois.serviceEndpoint = id;
|
|
132
|
-
didDocumentChanged = true;
|
|
133
|
-
}
|
|
129
|
+
whois.serviceEndpoint = id;
|
|
134
130
|
}
|
|
135
131
|
else {
|
|
136
132
|
didDocument.service = [
|
|
137
133
|
...((_g = didDocument.service) !== null && _g !== void 0 ? _g : []),
|
|
138
134
|
new core_1.DidDocumentService({ id: whoisId, serviceEndpoint: id, type: 'LinkedVerifiablePresentation' }),
|
|
139
135
|
];
|
|
140
|
-
didDocumentChanged = true;
|
|
141
136
|
}
|
|
142
137
|
}
|
|
143
138
|
const [credential] = verifiablePresentation.verifiableCredential;
|
|
@@ -149,10 +144,10 @@ async function publishSelfIssuedEcsPresentation(agent, id, ecsSchemas, schemaKey
|
|
|
149
144
|
attached,
|
|
150
145
|
};
|
|
151
146
|
didRecord.metadata.set('_vt/vtc', record);
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
147
|
+
// the write point publishes the document when it changed, and triggers the resolver when the
|
|
148
|
+
// published material did ([VSA-VT-LVP-5]): an ECS credential re-issued under the same URL changes
|
|
149
|
+
// the presentation a resolver reads, without changing the entry that announces it
|
|
150
|
+
await (0, publishedDidRecord_1.updateDidRecord)(agent, didRecord);
|
|
156
151
|
return verifiablePresentation;
|
|
157
152
|
}
|
|
158
153
|
//# sourceMappingURL=selfIssuedEcsCredential.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"selfIssuedEcsCredential.js","sourceRoot":"","sources":["../../src/utils/selfIssuedEcsCredential.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"selfIssuedEcsCredential.js","sourceRoot":"","sources":["../../src/utils/selfIssuedEcsCredential.ts"],"names":[],"mappings":"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"}
|
|
@@ -22,9 +22,10 @@ const core_1 = require("@credo-ts/core");
|
|
|
22
22
|
//@ts-expect-error
|
|
23
23
|
const jsonld_signatures_1 = require("@digitalcredentials/jsonld-signatures");
|
|
24
24
|
const verre_1 = require("@verana-labs/verre");
|
|
25
|
-
const
|
|
25
|
+
const feePreflight_1 = require("../blockchain/feePreflight");
|
|
26
26
|
const setupSelfTr_1 = require("./setupSelfTr");
|
|
27
27
|
const selfIssuedEcsCredential_1 = require("./selfIssuedEcsCredential");
|
|
28
|
+
const publishedDidRecord_1 = require("./publishedDidRecord");
|
|
28
29
|
const data_1 = require("./data");
|
|
29
30
|
async function getDidRecord(agent) {
|
|
30
31
|
const [didRecord] = await agent.dids.getCreatedDids({ did: agent.did });
|
|
@@ -95,12 +96,6 @@ async function signLinkedDataProofPresentation(agent, options) {
|
|
|
95
96
|
proofPurpose: new jsonld_signatures_1.purposes.AssertionProofPurpose(),
|
|
96
97
|
});
|
|
97
98
|
}
|
|
98
|
-
async function updateDidRecord(agent, didRecord) {
|
|
99
|
-
const repo = agent.context.dependencyManager.resolve(core_1.DidRepository);
|
|
100
|
-
(0, adminApiService_1.applyAdminApiServiceEntry)(didRecord.didDocument, agent.adminApiServiceEndpoint);
|
|
101
|
-
await repo.update(agent.context, didRecord);
|
|
102
|
-
await agent.dids.update({ did: didRecord.did, didDocument: didRecord.didDocument });
|
|
103
|
-
}
|
|
104
99
|
function findMetadataEntry(didRecord, key, id, jsonSchemaRef) {
|
|
105
100
|
var _a, _b;
|
|
106
101
|
const metadata = didRecord.metadata.get(key);
|
|
@@ -152,7 +147,7 @@ async function saveMetadataEntry(agent, didRecord, credential, verifiablePresent
|
|
|
152
147
|
type: 'LinkedVerifiablePresentation',
|
|
153
148
|
}));
|
|
154
149
|
didRecord.metadata.set(key, record);
|
|
155
|
-
await updateDidRecord(agent, didRecord);
|
|
150
|
+
await (0, publishedDidRecord_1.updateDidRecord)(agent, didRecord);
|
|
156
151
|
}
|
|
157
152
|
async function deleteMetadataEntry(agent, id, didRecord, key) {
|
|
158
153
|
const found = findMetadataEntry(didRecord, key, id, id);
|
|
@@ -163,7 +158,7 @@ async function deleteMetadataEntry(agent, id, didRecord, key) {
|
|
|
163
158
|
return null;
|
|
164
159
|
delete metadata[found.schemaId];
|
|
165
160
|
didRecord.metadata.set(key, metadata);
|
|
166
|
-
await updateDidRecord(agent, didRecord);
|
|
161
|
+
await (0, publishedDidRecord_1.updateDidRecord)(agent, didRecord);
|
|
167
162
|
return { schemaId: found.schemaId };
|
|
168
163
|
}
|
|
169
164
|
async function createVtc(agent, publicApiBaseUrl, id, credential) {
|
|
@@ -281,7 +276,7 @@ async function migrateVtjscServiceIds(agent) {
|
|
|
281
276
|
if (!changed)
|
|
282
277
|
return;
|
|
283
278
|
didRecord.metadata.set('_vt/jsc', metadata);
|
|
284
|
-
await updateDidRecord(agent, didRecord);
|
|
279
|
+
await (0, publishedDidRecord_1.updateDidRecord)(agent, didRecord);
|
|
285
280
|
agent.config.logger.info('[VTJSC] migrated stored service ids to the -vtjsc-vp naming');
|
|
286
281
|
}
|
|
287
282
|
/**
|
|
@@ -310,7 +305,7 @@ async function detachVtjscPublications(agent, schemaRefs) {
|
|
|
310
305
|
}
|
|
311
306
|
if (detached.length === 0)
|
|
312
307
|
return [];
|
|
313
|
-
await updateDidRecord(agent, didRecord);
|
|
308
|
+
await (0, publishedDidRecord_1.updateDidRecord)(agent, didRecord);
|
|
314
309
|
return detached;
|
|
315
310
|
}
|
|
316
311
|
/**
|
|
@@ -336,7 +331,7 @@ async function reattachVtjscPublication(agent, schemaRef) {
|
|
|
336
331
|
...services,
|
|
337
332
|
new core_1.DidDocumentService({ id: serviceId, serviceEndpoint, type: 'LinkedVerifiablePresentation' }),
|
|
338
333
|
];
|
|
339
|
-
await updateDidRecord(agent, didRecord);
|
|
334
|
+
await (0, publishedDidRecord_1.updateDidRecord)(agent, didRecord);
|
|
340
335
|
return true;
|
|
341
336
|
}
|
|
342
337
|
function getTrustMetadata(didRecord, key, schemaId) {
|
|
@@ -400,7 +395,7 @@ async function anchorCredentialDigest(agent, schemaId, credential, issuerPartici
|
|
|
400
395
|
agentParticipantId: 0,
|
|
401
396
|
walletAgentParticipantId: 0,
|
|
402
397
|
digest,
|
|
403
|
-
});
|
|
398
|
+
}, { granter: (0, feePreflight_1.feeGranterFor)(agent, issuerParticipantId) });
|
|
404
399
|
agent.config.logger.info(`[DigestAnchor] Anchored digest ${digest} for schema ${schemaId} against issuer participant ${issuerParticipantId} (tx ${txHash})`);
|
|
405
400
|
await agent.indexer.waitForDigest(digest);
|
|
406
401
|
}
|
|
@@ -439,7 +434,7 @@ async function rebindEcsCredentialSchema(agent, publicApiBaseUrl, schemaId, sche
|
|
|
439
434
|
}
|
|
440
435
|
if (removedStale) {
|
|
441
436
|
didRecord.metadata.set('_vt/vtc', record);
|
|
442
|
-
await updateDidRecord(agent, didRecord);
|
|
437
|
+
await (0, publishedDidRecord_1.updateDidRecord)(agent, didRecord);
|
|
443
438
|
}
|
|
444
439
|
await (0, selfIssuedEcsCredential_1.publishSelfIssuedEcsPresentation)(agent, vpUrl, Object.assign(Object.assign({}, (0, data_1.getEcsSchemas)(publicApiBaseUrl)), (onChainJsonSchema ? { [schemaKey]: onChainJsonSchema } : {})), schemaKey, ['VerifiableCredential', 'VerifiableTrustCredential'], { id: jscUrl, type: 'JsonSchemaCredential' }, ecsClaims, async (verifiablePresentation) => await anchorCredentialDigest(agent, Number(schemaId), verifiablePresentation.verifiableCredential[0], issuerParticipantId), effectiveUntil);
|
|
445
440
|
const freshRecord = await getDidRecord(agent);
|
|
@@ -466,7 +461,7 @@ async function rebindEcsCredentialSchema(agent, publicApiBaseUrl, schemaId, sche
|
|
|
466
461
|
recordChanged = true;
|
|
467
462
|
}
|
|
468
463
|
if (recordChanged)
|
|
469
|
-
await updateDidRecord(agent, freshRecord);
|
|
464
|
+
await (0, publishedDidRecord_1.updateDidRecord)(agent, freshRecord);
|
|
470
465
|
}
|
|
471
466
|
agent.config.logger.info(`[SelfTR] Rebound ${schemaKey} credential to VTJSC ${jscUrl}`);
|
|
472
467
|
}
|
|
@@ -492,7 +487,7 @@ async function withdrawSelfIssuedEcsCredentials(agent, issuerParticipantId) {
|
|
|
492
487
|
const record = await getDidRecord(agent);
|
|
493
488
|
if ((_b = record.didDocument) === null || _b === void 0 ? void 0 : _b.service) {
|
|
494
489
|
record.didDocument.service = record.didDocument.service.filter(s => s.id !== `${agent.did}#whois`);
|
|
495
|
-
await updateDidRecord(agent, record);
|
|
490
|
+
await (0, publishedDidRecord_1.updateDidRecord)(agent, record);
|
|
496
491
|
}
|
|
497
492
|
}
|
|
498
493
|
return withdrawn;
|